tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
565
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von NetPerformance
    NetPerformance NetPerformance ist offline Mitglied Brokat
    Registriert seit
    Aug 2003
    Beiträge
    409
    Hallo

    Ich habe ein Problem mit dem Insert-Paramater.
    Das Einfügen funktioniert nicht ! Ich erhalte keine Fehlermeldung. Es passiert einfach nichts.

    Aso.. Das auslesen funktioniert ohne Probleme !

    Wäre für jede Hilfe dankbar.. bis jetzt konnte mir nämlich niemand helfen

    Gruß
    Aaron


    PHP-Code:
    <html> 
    <head> 
    <title>In Datenbank einfügen</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
    </head> 

    <body> 
    <p>Geben Sie einen vollst&auml;ndigen Datensatz ein und senden Sie das Formular ab : </p> 
    <form action = "<?php $PHP_SELF ?>"  method = "post"><p> 
        <input name="nachname" type="text" size="30"> Nachname<p></p> 
        <input name="vorname" type="text" size="30"> Vorname<p></p> 
        <input name="personalnummer" type="text" size="30"> personalnummer (eine ganze Zahl)<p></p> 
        <input name="gehalt" type="text" size="30"> Gehalt (Nachkommastellen mit Punkt)<p></p> 
        <input name="geburtstag" type="text" size="30"> Geburtstag (in der Form JJJJ-MM-TT)<p></p> 

          <input name="einfuegen" type="submit" value="Senden"> 
    </p> 
        <p>&nbsp;</p> 
        <p>Alle Datens&auml;tze anzeigen !</p> 
        <p> 
          <input type="submit" name="anzeigen" value="Anzeigen"> 
          </p> 
    </form> 

    <?php 

    $server 
    "server"
    $user   "us"
    $pass   "pw"
    $dbname "db"

    $nn=strip_tags($HTTP_POST_VARS["nachname"]); 
    $vn=strip_tags($HTTP_POST_VARS["vorname"]); 
    $pn=strip_tags($HTTP_POST_VARS["personalnummer"]); 
    $gh=strip_tags($HTTP_POST_VARS["gehalt"]); 
    $gb=strip_tags($HTTP_POST_VARS["geburtstag"]); 

    if(
    $einfuegen// einfuegen = Submit-Button 

        
    // Server-connection 
        
    $connect mysql_connect("$server","$user","$pass") or die(mysql_error()); 
        
    $db  mysql_select_db("$dbname"); 
         
        
    /* 
        $query = "INSERT INTO person (name, vorname, personalnummer, gehalt, geburtstag) VALUES 
        ( 
            '$nn', 
            '$vn', 
            '$pn', 
            '$gh', 
            '$gb' 
        )"; 
        */ 
         
        
    $sql="INSERT INTO person SET 
             name='
    $nn', 
             vorname='
    $vn', 
             personalnummer='
    $pn', 
             gehalt='
    $gh', 
             geburtstag='
    $gb'"
         
        
    // $result = mysql_query($sql, $connect); 


    if(
    $anzeigen

        
    mysql_connect("$server","$user","$pass") or die(mysql_error()); 
        
    $db  mysql_select_db("$dbname"); 
        
    $res mysql_query("SELECT * FROM person"); // Liefert alle Datensätze 
        
    $num mysql_num_rows($res); // Anzahl der Datensätze 
         
        
    echo "$num Datensätze gefunden<br><br>"
        
    // Um alle Datensätze auszugeben 
        
    for($i=0$i<$num$i++) 
        { 
            
    $nn mysql_result($res$i"name"); 
            
    $vn mysql_result($res$i"vorname"); 
            
    $pn mysql_result($res$i"personamnummer "); 
            
    $gh mysql_result($res$i"gehalt"); 
            
    $gb mysql_result($res$i"geburtstag"); 
         
            echo 
    "$vn$nn$pn$gh$gb<br>"
        } 


    ?> 
    </body> 
    </html>
     

  2. #2
    Avatar von StefanR
    StefanR StefanR ist offline Mitglied Platin
    Registriert seit
    Apr 2003
    Ort
    Hude
    Beiträge
    582
    Hallo, dass kann auch nichts werden, weil PHP meines Wissens Variablen, die in einem Hochkomma stehen einfach ingnoriert und so lieißt wie es da steht, also:
    PHP-Code:
    $var "name";
    echo 
    "$var"//gibt name aus
    echo '$var' //gibt $var aus 
    So und du hast in deinem SQL Statement: das hier stehen:
    PHP-Code:
    $query "INSERT INTO person (name, vorname, personalnummer, gehalt, geburtstag) VALUES
        (
            '
    $nn',
            '
    $vn',
            '
    $pn',
            '
    $gh',
            '
    $gb'
        )"

    mache da mal bitte das hier drauß:
    PHP-Code:
    $query "INSERT INTO person (name, vorname, personalnummer, gehalt, geburtstag) VALUES
        (
            '"
    .$nn."',
            '"
    .$vn."',
            '"
    .$pn."',
            '"
    .$gh."',
            '"
    .$gb."'
        )"

    Ist eh übersichtlicher.
     

  3. #3
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Möglicherweise liegt es daran, dass du die entsprechende Zeile auskommenitiert hast. Siehe Zeile &asymp; 59.
     
    Markus Wulftange

  4. #4
    Avatar von NetPerformance
    NetPerformance NetPerformance ist offline Mitglied Brokat
    Registriert seit
    Aug 2003
    Beiträge
    409
    Funktioniert leider so auch nicht
    http://nopaste.php.cd/13300
     

  5. #5
    Avatar von StefanR
    StefanR StefanR ist offline Mitglied Platin
    Registriert seit
    Apr 2003
    Ort
    Hude
    Beiträge
    582
    Was ist denn das für einen PHP Version, weil du ja noch auf die "Standartvariablen" zugreifst:
    PHP-Code:
    if($einfuegen// einfuegen = Submit-Button 
     

  6. #6
    Avatar von NetPerformance
    NetPerformance NetPerformance ist offline Mitglied Brokat
    Registriert seit
    Aug 2003
    Beiträge
    409
    Das sollte funktionieren, da das Auslesen ohne Probleme funktioniert.

    PHP-Code:
    if($anzeigen
     

  7. #7
    Avatar von StefanR
    StefanR StefanR ist offline Mitglied Platin
    Registriert seit
    Apr 2003
    Ort
    Hude
    Beiträge
    582
    Ersetze mal bitte:
    PHP-Code:
    $query "INSERT INTO person (name, vorname, personalnummer, gehalt, geburtstag) VALUES
        (
            '"
    .$nn."',
            '"
    .$vn."',
            '"
    .$pn."',
            '"
    .$gh."',
            '"
    .$gb."'
        )"
    ;

        
    /*
        $sql="INSERT INTO person SET
             name='$nn',
             vorname='$vn',
             personalnummer='$pn',
             gehalt='$gh',
             geburtstag='$gb'";
        */
        
        // $result = mysql_query($query, $connect); 
    mit:
    PHP-Code:
    $query "INSERT INTO person (name, vorname, personalnummer, gehalt, geburtstag) VALUES
        (
            '"
    .$nn."',
            '"
    .$vn."',
            '"
    .$pn."',
            '"
    .$gh."',
            '"
    .$gb."'
        )"
    ;
    $result mysql_query($query$connect) or die(mysql_error());
    if (
    TRUE == $result) {
    echo 
    "Datensatz eingefügt"//will nur testen ob er den Query ausführt

    Weil MySQL spuckt nur einen Fehler mit mysql_error() aus.
     

  8. #8
    Avatar von NetPerformance
    NetPerformance NetPerformance ist offline Mitglied Brokat
    Registriert seit
    Aug 2003
    Beiträge
    409
    @StefanR: Du hast nu einen neuen Freund

    Ich danke dir für die Mühe !

    Gruß
    Aaron
     

Ähnliche Themen

  1. MYSQL, Problem mit INSERT
    Von null_plan im Forum Relationale Datenbanksysteme
    Antworten: 12
    Letzter Beitrag: 02.07.10, 15:33
  2. mysql INSERT INTO Problem
    Von buzzom im Forum PHP
    Antworten: 3
    Letzter Beitrag: 28.06.08, 15:35
  3. mysql insert problem
    Von luchs3 im Forum PHP
    Antworten: 5
    Letzter Beitrag: 29.05.06, 16:11
  4. [VBNET]Problem mit MySQL INSERT
    Von port11 im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 10.02.05, 10:03
  5. MySQL - Insert Problem !
    Von NetPerformance im Forum PHP
    Antworten: 2
    Letzter Beitrag: 19.04.04, 16:07