kostenloser Webspace werbefrei: lima-city


Gästebuch !!Hilfe!!

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.

    Hallo mal wieder.
    Kämpfe mit einem PHP Script für mein Gästebuch.
    Das script:
    <?php 
    $url = $_POST['url']; 
    $name = $_POST['name']; 
    $banner = $_POST['banner']; 
    $nachricht = $_POST['nachricht']; 
    $ip = $_POST['ip']; 
    
    $verbindung =   mysql_connect("mysql.lima-city.de", "USER", "PW") 
                    or die("Keine Verbindung moeglich");
                            mysql_select_db("db_110743_3") 
                            or die ("Die Datenbank existiert nicht");
    
    $eintrag = "
      INSERT INTO `onemillionnews` (`url`, `name`, `banner`, `nachricht`, `ip`) 
      VALUES ('$url', '$name', '$banner','$nachricht','$ip')";
    
    
      $eintragen = mysql_query($eintrag) or die(mysql_error());
    
    	?>



    Und als weiteres das Formular:


    <form style="margin:0px auto;width:480px;border:1px solid #000000;text-align:left;" 
        action="<?php echo $_SERVER['SCRIPT_NAME'];?>"
         method="post" target="_self">
    
          Ihre Website:
          
          <input name="name" type="text" id="name" size="45" value="name"/>
     
       
          Beschreibung ihrer Website:<br />
            <textarea name="nachricht" id="nachricht" cols="45" rows="5" value="nachricht"></textarea>
        </label>
       
        
        
          <label>Url. zu ihrem Banner bitte hier eintragen: <br />
          <input name="banner" type="text" id="banner" size="45" value="banner"/>
          </label>
        <input name="Kontrollkästchen" type="checkbox" value="" />
       
        <p>Ich bin mit den Regeln dieser Website vertraut und werde mich an diese halten!      </p>
    
        <label>Wollen sie diese Daten senden?
         <input type="submit" name="senden" id="senden" value="Senden" />
    </label>
        <hr align="center" size="3" />
        <div align="center">
          
       
      <input type="hidden" name="ip" id="ip" value="ip"/>      
      <u>Ihre IP Lautet:<? echo $REMOTE_ADDR ?>
             
             <?
    if(isset($_POST['senden']))
    {
     // Eintrag usw
    }else{
     // Formular anzeigen
    }
    ?>


    Habe jetzt mal etwas komisch gekürzt...
    Das Problem liegt in der action "" des Formulars; wie schaffe ich es, dass die Datei gesendet wird und für das senden ds PHP script genau über dem Quellcode benutzt wird?
    (also einmal die datei: eintrag.php und die Datei senden.php wobei in senden.php das obige script ist)
    wie muss ich das script umformen damit ein formular zu meiner mysql Tabelle gesendet wird?
    Hoffe auf hilfe
    Onemillion
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hi,
    ich verstehe deine letzten Worte nicht.
    Das erste Script trägt doch schon die Variablen in die DB oder nicht?
  4. einfach action="senden.php" ;)

    //EDIT: ehm dein Script ist ziemlich anfällig gegen SQL Injections :D

    Beitrag geändert: 13.10.2008 10:40:59 von vercetti
  5. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.

    und wie schaffe ich es, dass nachdem mit dem senden.php das Formular gesendet wurde auf eine seite weitergeleitet wird?
    (z.B. danke.php)
  6. header('Location: danke.php');

    http://de2.php.net/manual/de/function.header.php
  7. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.

    also darf ich in dem senden.php script für die ction html benutzen, da ja dieser Text


    header('Location: danke.php');



    in den headbereich gehört?
    Und wie schafft man es, dass die weiterleitung erst nach 3 sekunden ausgeführt wird?

    Beitrag geändert: 15.10.2008 14:20:01 von onemillion
  8. Hallo,

    das kannst du nur mit HTML (oder JavaScript) machen. Du musst nur den Code in dein PHP Script schreiben, z.B.

    echo '<head>'
    echo '<meta http-equiv="refresh" content="3; url=zielurl.htm">'
    echo '</head>'

    Am besten schreibst du dies ganz an den Anfang.

    Beitrag geändert: 15.10.2008 14:45:29 von spanky1408
  9. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.


    Hallo,

    das kannst du nur mit HTML (oder JavaScript) machen. Du musst nur den Code in dein PHP Script schreiben, z.B.

    echo '<head>'
    echo '<meta http-equiv="refresh" content="3; url=zielurl.htm">'
    echo '</head>'

    Am besten schreibst du dies ganz an den Anfang.

    Beitrag geändert: 15.10.2008 14:45:29 von spanky1408

    Und wenn ich will, dass dieser Teil aus einem echo heraus ausgeführt wird?
    Also wenn ein bestimmter zstand eintritt wird man automatisch weitergeleite?

  10. Und wenn ich will, dass dieser Teil aus einem echo heraus ausgeführt wird?
    Also wenn ein bestimmter zstand eintritt wird man automatisch weitergeleite?


    Kannst du dann nicht if - else dafür benutzen?
    <?php
    
    if (true/false) {
    (blablablah) 
    }
    else {
    echo 'Was immer du wilst'
    echo '<head>'
    echo '<meta http-equiv="refresh" content="3; url=zielurl.htm">'
    echo '</head>'
    }
    
    ?>


    Beitrag geändert: 15.10.2008 19:21:33 von sy
  11. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.



    Und wenn ich will, dass dieser Teil aus einem echo heraus ausgeführt wird?
    Also wenn ein bestimmter zstand eintritt wird man automatisch weitergeleite?


    Kannst du dann nicht if - else dafür benutzen?
    <?php
    
    if (true/false) {
    (blablablah) 
    }
    else {
    echo 'Was immer du wilst'
    echo '<head>'
    echo '<meta http-equiv="refresh" content="3; url=zielurl.htm">'
    echo '</head>'
    }
    
    ?>




    kann es sein das der code fehlerhaft ist?
    er funktioniert leider nämlich icht
    Also:
    echo '<head>'
    echo '<meta http-equiv="refresh" content="3; url=zielurl.htm">'
    echo '</head>'


  12. kann es sein das der code fehlerhaft ist?
    er funktioniert leider nämlich icht
    Also:
    echo '<head>'
    echo '<meta http-equiv="refresh" content="3; url=zielurl.htm">'
    echo '</head>'



    Das war eher als Denkansatz und der Code stammt ja nicht von mir.
    Probier doch einfach mal mit
    echo "<html>";
    echo "<head>";
    echo "<meta http-equiv="refresh" content="3; url=zielurl.htm">";
    echo "</head>";
    echo "</html>";



    Beitrag geändert: 15.10.2008 19:28:16 von sy


    Beitrag geändert: 15.10.2008 19:32:07 von sy
  13. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.

    funktionit trotzdem nicht...
  14. wie sieht denn dein code aus?
    also der mit if? denn (blablabla) geht ja schlecht^^
    Zeig einfach mal :biggrin:
  15. Autor dieses Themas

    onemillion

    Kostenloser Webspace von onemillion, auf Homepage erstellen warten

    onemillion hat kostenlosen Webspace.

    <?
    
    [...]
    
    
    if ($url == "" OR $name == "" OR $banner == "" OR $nachricht == "")
     {
     echo "Bitte füllen Sie alle Angaben aus!<a href='http://onemillion.lima-city.de/.../eintrag.php'>Zurück</a>";
     exit;
    }
    else {
     mysql_query($eintrag);
     
     echo '<html>'
     echo '<head>'
     echo '<meta http-equiv="refresh" content="3"; url= "http://onemillion.lima-city.de/.../danke.php">'
     echo '</head>'
    echo  "</html>"
    echo 'Sie werden autmatisch weitergeleitet';
    }
    
    
    
    
    ?>

    kürze mal aus dem text die mysqlverbindung raus.
    die funktioniert 100%
  16. ja, manchmal vergisst man sowas einfaches. Hier der Code der geht:

    <?php
    
    echo "<html>";
    echo "<head>";
    echo "<meta http-equiv=/"refresh/" content=/"3; URL=url.php/">";
    echo "</head>";
    echo "</html>";
    echo "Sie werden automatisch weitergeleitet.";
    ?>


    die " bei refresh und content müssen escapet werden.

    €dit:
    Toll, bei lima gehen ja keine Backslashes.
    Also mal anders. s.o
    Backslahses = Slashes. Musste halt ändern. Sorry.

    Beitrag geändert: 15.10.2008 20:26:50 von sy

  17. die " bei refresh und content müssen escapet werden.


    Jein ;) Er hatte das Ganze ja in einfachen Anführungszeichen (''). Aber Strichpunkte am Ende einer Zeile sollen oftmals Wunder helfen... ansonsten gilt natürlich wie üblich: Fehlermeldung posten, meine Kristallkugel ist schon wieder in Reparatur.

    Edit sieht noch: Richtig abschreiben will offensichtlich auch gelernt sein.

    Richtig:
    content="3; url=zielurl.htm"

    Falsch:
    content="3"; url="zielurl.htm"
  18. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!