kostenloser Webspace werbefrei: lima-city


Datenfelder leer

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    ferana

    Kostenloser Webspace von ferana, auf Homepage erstellen warten

    ferana hat kostenlosen Webspace.

    Gutn Tag,
    ich habe mich jetzt etwas in PHP eingearbeitet, doch klappt jetzt mal wieder etwas nicht.:mad:

    Bitte schaut euch das mal an:

    Das Eingeabeformular:
    <form action="sql_mods.php">
      <p>Tester:<br><input name="tester" type="text" size="30" maxlength="30" value="Tester"></p>
      <p>Abwesend von:<br><input name="von" type="text" size="30" maxlength="99" value="Von"></p>
      <p>Bis:<br><input name="bis" type="text" size="30" maxlength="99" value="Bis"></p>
      <p>Begründung (freiwillig):<br><textarea name="begruendung" cols="50" rows="7"></textarea></p>
            <input type="submit" value=" Absenden ">
            <input type="reset" value=" Abbrechen">
    </form>


    sql_mods.php
    <?php
    /* Variablen aus dem Forumlar bestimmen */
    $tester                   = $HTTP_POST_VARS["tester"];
    $von                 = $HTTP_POST_VARS["von"];
    $bis                 = $HTTP_POST_VARS["bis"];
    $begruendung                 = $HTTP_POST_VARS["begruendung"];
    
    include("include_config2.inc.php");
    $db = @mysql_pconnect($host, $user, $pass) or die ("Verbindung mit MySQL-Server fehlgeschlagen!");
    @mysql_select_db($database, $db) or die ("Verbindung zur Datenbank fehlgeschlagen!");
       $sql = "INSERT INTO $table (id, tester, von, bis, begruendung) VALUES ('', '$moderator', '$von', '$bis', '$begruendung')";
       $result = mysql_query($sql, $db);
       if($result)
       {
        echo "Eintrag erfolgreich!";
       }
       else
       {
        echo "FEHLER!";
       };
    ?>


    Ausgabe:
    <?php
    include("include_config2.inc.php");
    $db = @mysql_pconnect($host, $user, $pass) or die ("Verbindung mit MySQL-Server fehlgechlagen!");
    @mysql_select_db($database, $db) or die ("Verbindung zur Datenbank fehlgeschlagen!");
    $sql = "SELECT * FROM $table";
    $result = mysql_query($sql,$db);
    $number = mysql_num_rows($result);
    $seiten=floor($number/$proseite);
    $start=$page * $proseite;
    $sql = "SELECT * FROM $table ORDER BY id DESC LIMIT $start,$proseite";
    $result = mysql_query($sql,$db);
    $ende = $start + $proseite;
    if ($ende>$number) { $ende = $number; }
    echo "Zur Zeit sind $number News vorhanden.";
    while ($row = mysql_fetch_array($result)) {
    
    $tester= $row['tester'];
    $von = $row['von'];
    $bis = $row['bis'];
    $begruendung = $row['begruendung'];
    
    
    echo "<br><br>
    <table width=\"600\">
    <tr>
    <td width=\"400\">".$tester."</td>
    <td width=\"100\">".$von."</td>
    <td width=\"100\">".$bis."</td>
    </tr>
    </table>
    <table width=\"600\">
    <tr>
    <td width=\"600\"><b>".$begruendung."</b></td>
    </tr>
    </table>
    <br>";
    ?>


    Also an der Ausgabe kann es nicht liegen, da in der Datenbank nur leere Felder erscheinen!
    Bei den ersten beiden versuchen wurde nur das Datum "bis" in die Datenbank geschrieben!
    Es kommt leider auch keine Fehlermeldung.

    Lg ferana
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Wenn die ID autoincrement ist, dann brauchst du da gar nix mit machen, das passiert automatisch.
    Ansonsten lasse doch mal die Variablen, welche du in die Datenbank schreiben lassen willst per echo $variablenname ausgeben und schau, ob da was drin steht.

    Sollte aber auch eher so aussehen dein Code:

    $tester =$_POST["tester"];
    $von =$_POST["von"];
    $bis=$_POST["bis"];
    $begruendung=$_POST["begruendung"];


    $sql = "INSERT INTO $table (tester, von, bis, begruendung) VALUES ( '" . $moderator . "', '" . $von . "', '" . $bis . "', '" . $begruendung . "')";



    Fragen tu ich mich auch noch, was die Variable $moderator hier soll, die finde ich sonst nirgends.

    Beitrag zuletzt geändert: 17.11.2009 14:37:34 von karpfen
  4. Autor dieses Themas

    ferana

    Kostenloser Webspace von ferana, auf Homepage erstellen warten

    ferana hat kostenlosen Webspace.

    Hallo Karpfen,

    danke für deine Hilfe, aber mittels echo wird ebenfalls nichts ausgegeben!
    Auch nicht wenn ich nur =$_POST["blablabla"]; statt = $HTTP_POST_VARS["blablabla"]; verwende.

    Komisch ist jedoch, das es bei meinem Newssystem was fast gleich aufgebaut ist, reibungslos klappt.

    Lg ferana
  5. Versuche es so: So solle es funktionieren!

    sql_mods.php

    <?php
    include("include_config2.inc.php");
    
    /* Variablen aus dem Forumlar bestimmen */
    $moderartor              = $_POST["tester"];
    $von                 = $_POST["von"];
    $bis                 = $_POST["bis"];
    $begruendung         = $_POST["begruendung"];
    
    
    $id = 01;
    
     $sql = "INSERT INTO $table (id, tester, von, bis, begruendung) VALUES ('$id', '$moderator', '$von', '$bis', '$begruendung')";
       $result = mysql_query($sql);
       if($result)
       {
        echo "Eintrag erfolgreich!";
       }
       else
       {
        echo "FEHLER!";
       };
    ?>


    In der Datei include_confic2.php muss sein:
    $db = @mysql_pconnect($host, $user, $pass) or die ("Verbindung mit MySQL-Server fehlgeschlagen!");
    
    //folgende Variablen müssen angegeben sein:
    $table = "";
    $host
    $user
    $pass


    jetzt müsste es funktionieren.

    achja, schreibe beim html <form action="sql_mods.php" method="get">

    dann gehst du auf nummer sicher


    Beitrag zuletzt geändert: 17.11.2009 14:57:01 von aklasse
  6. Wenn man die Daten mit GET übergibt, muss man sie aber auf der anderen Seite auch anders verarbeiten.
    Also bleib mal lieber bei der Methode POST, die ist schon OK.

    $_POST['variablenname'] ist meines Wissens der neuere Stand der Dinge als das komische $HTTP_POST_VARS

    Bin aber noch am Fehler suchen.

    Mich stören bei der verarbeitenden Dateien die vielen Leerzeichen bei der Zuweisung. Vielleicht klappt es deshalb nicht.
    Gebe doch mal mit echo $_POST['von'] aus :)

    Beitrag zuletzt geändert: 17.11.2009 15:02:19 von karpfen
  7. ich weiß jetzt nciht, aber von der Syntax her sehen meine includes so ais

    <?php
    include "./path/dateiname.bla";
    ?>

    oder ist das eine andere include-Funktion?

    Beitrag zuletzt geändert: 17.11.2009 15:09:09 von sebulon
  8. sebulon schrieb:
    ich weiß jetzt nciht, aber von der Syntax her sehen meine includes so ais

    <?php
    include "./path/dateiname.bla";
    ?>

    oder ist das eine andere include-Funktion?


    Das Includieren geht sowohl als auch :wink: Man kann ja auch echo ("Test") schreiben anstelle von echo "Test". Ist vielleicht syntaktisch korrekter. Da aber die Variablen beim Ausgeben leer scheinen muss der Fehler eigentlich beim Zuweisen der Variablen liegen und ich vermute die 10 Leerzeichen nach dem = als Fehlerursache.

    Beitrag zuletzt geändert: 17.11.2009 15:12:42 von karpfen
  9. oh shit. natürlich nicht get. wäre idiotisch. method="post" natürlich


    EDIT by karpfen: Was aklasse meint ist, dass du die Methode zur Übergabe der Daten vergessen hast, folgende Codezeile:

    <form action="sql_mods.php" method="POST">



    Beitrag zuletzt geändert: 17.11.2009 15:23:28 von karpfen
  10. Autor dieses Themas

    ferana

    Kostenloser Webspace von ferana, auf Homepage erstellen warten

    ferana hat kostenlosen Webspace.

    <?php
    /* Variablen aus dem Forumlar bestimmen */
    $moderator = $_POST["moderator"];
    $von = $_POST["von"];
    $bis = $_POST["bis"];
    $begruendung = $_POST["begruendung"];
       {
        echo "$moderator <br> $von <br> $bis <br> $begruendung";
       }
       
    ?>


    Weiße Seite.

    Das "moderator" war die eigentliche Variable, wurde aber nur für das Forum in Tester umgeändert!

    Lg ferana
  11. Versuche mal folgenden Code:

    <?php
    /* Variablen aus dem Forumlar bestimmen */
    $moderator = $_POST["moderator"];
    $von = $_POST["von"];
    $bis = $_POST["bis"];
    $begruendung = $_POST["begruendung"];
    
    echo $moderator . "<br>" .  $von . " <br>" .  $bis .  "<br>" .  $begruendung;
       
       
    ?>


    Und wie gesagt, beim Formular die Methode method="POST" muss angegeben sein.

    <form action="sql_mods.php" method="POST">



    EDIT: Vielleicht kannst du von all deinen Dateien nochmal die aktuelle Version posten, damit wir sehen, welche Fehler du schon behoben hast.

    Beitrag zuletzt geändert: 17.11.2009 15:56:40 von karpfen
  12. t****k

    Hey,

    dort war noch ein fehler drin hier die berrichtigung

    <?php
    include("include_config.inc.php");
    
    /* Variablen aus dem Forumlar bestimmen */
    $moderartor              = $_POST["tester"];
    $von                 = $_POST["von"];
    $bis                 = $_POST["bis"];
    $begruendung         = $_POST["begruendung"];
    
    
    $id = 01;
    
     $sql = "INSERT INTO $table (id, tester, von, bis, begruendung) VALUES ('$id', '$moderator', '$von', '$bis', '$begruendung')";
       $result = mysql_query($sql);
       if($result)
       {
        echo "Eintrag Erfolgreich!";
       }
       else
       {
        echo "Fehler!";
       };
    ?>


    Beitrag zuletzt geändert: 17.11.2009 16:52:24 von tobitk
  13. Autor dieses Themas

    ferana

    Kostenloser Webspace von ferana, auf Homepage erstellen warten

    ferana hat kostenlosen Webspace.

    Jipiee,

    danke, ich habe es geschafft!:lol:

    Und der Fehler war so simpel wie einfach! In der Conifurationsdatei war erstens die noch meine alte Tabelle drinnen und dann fehlte mir, wie ihr mir glücklicherweise sagtet, das method="POST".

    Aber nun klappts super und ich bin erstmal happy!

    Danke:thumb:


    Beitrag zuletzt geändert: 17.11.2009 18:03:25 von ferana
  14. Du solltest dennoch die ID nicht manuell befüllen sondern auf autoincrement setzen in der Datenbank. Weil momentan wird laut deinem Skript jeder Datensatz mit dem Wert "01" befüllt und das ist sicher nicht Sinn der Sache :biggrin:
  15. Autor dieses Themas

    ferana

    Kostenloser Webspace von ferana, auf Homepage erstellen warten

    ferana hat kostenlosen Webspace.

    nein, das mit den ID habe ich rausgenommen und uf Primärschlüssel geändert!

    Hier vllt nochmal der fertige Code, falls ein anderer das selbe Problem hat!
    Eingabe der Daten:
    <form method="post" action="sqlmods.php">
      <p>Moderator:<br><input name="moderator" type="text" size="30" maxlength="30" value="Moderator"></p>
      <p>Abwesend von:<br><input name="von" type="text" size="30" maxlength="99" value="Von"></p>
      <p>Bis:<br><input name="bis" type="text" size="30" maxlength="99" value="Bis"></p>
      <p>Begründung (freiwillig):<br><textarea name="grund" cols="50" rows="7">gjhgjf</textarea></p>
            <input type="submit" value=" Absenden ">
            <input type="reset" value=" Abbrechen">
    </form>



    Verarbeitung:

    <?php
    /* Variablen aus dem Forumlar bestimmen */
    $moderator                    = $HTTP_POST_VARS["moderator"];
    $von                 = $HTTP_POST_VARS["von"];
    $bis                 = $HTTP_POST_VARS["bis"];
    $grund                 = $HTTP_POST_VARS["grund"];
    
    include("config2.php");
    $db = @mysql_pconnect($host, $user, $pass) or die ("Verbindung mit MySQL-Server fehlgeschlagen!");
    @mysql_select_db($database, $db) or die ("Verbindung zur Datenbank fehlgeschlagen!");
    
       $sql = "INSERT INTO $table (id, moderator, von, bis, grund) VALUES ('', '$moderator', '$von', '$bis', '$grund')";
       $result = mysql_query($sql, $db);
       if($result)
       {
        echo "Eintrag erfolgreich!";
       }
       else
       {
        echo "FEHLER!";
       };
    ?>



    Config:
    <?php
    $host = "mysql.lima-city.de";
    $user = "USERxxxxxxx";
    $pass = "xxxxxxxx";
    $database = "dbxxxxxxxxx";
    $table = "xxxxxxxxxx";
    $proseite = "99999999";
    ?>


    Ausgabe der Daten
    <?php
    include("config2.php");
    $db = @mysql_pconnect($host, $user, $pass) or die ("Verbindung mit MySQL-Server fehlgechlagen!");
    @mysql_select_db($database, $db) or die ("Verbindung zur Datenbank fehlgeschlagen!");
    $sql = "SELECT * FROM $table";
    $result = mysql_query($sql,$db);
    $number = mysql_num_rows($result);
    $seiten=floor($number/$proseite);
    $start=$page * $proseite;
    $sql = "SELECT * FROM $table ORDER BY id DESC LIMIT $start,$proseite";
    $result = mysql_query($sql,$db);
    $ende = $start + $proseite;
    if ($ende>$number) { $ende = $number; }
    echo "Zur Zeit sind $number News vorhanden.";
    while ($row = mysql_fetch_array($result)) {
    
    $moderator = $row['moderator'];
    $von = $row['von'];
    $bis = $row['bis'];
    $grund= $row['grund'];
    
    
    echo "<br><br>
    <table width=\"600\">
    <tr>
    <td width=\"400\">".$moderator."</td>
    <td width=\"100\">".$von."</td>
    <td width=\"100\">".$bis."</td>
    </tr>
    </table>
    <table width=\"600\">
    <tr>
    <td width=\"600\"><b>".$grund."</b></td>
    </tr>
    </table>



    Nochmals danke für eure große Hilfe!
  16. Gern geschehen. Da Problem gelöst, mach ich mal zu. Bei Rückfragen PN an mich!
  17. 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!