Ergebnis 1 bis 4 von 4

Thema: [PHP,MySQL] Problem mit gewöhnlichem INSERT

  1. #1

    [PHP,MySQL] Problem mit gewöhnlichem INSERT

    Ist mir ja fast schon peinlich, wegen einem derartigen Problem mich zu melden, aber ich bin komplett ratlos.

    Ich möchte mit folgendem Script Daten in meine Datenbank einfügen, hab allerdings das Problem, dass das gute Programm den Datensatz nicht einträgt.

    PHP-Code:
    <?

    $hostdb = "localhost";
    $userdb = "username";
    $passdb = "passwort";
    $db   = "server";

    $verbindung = @mysql_connect($hostdb,$userdb,$passdb);

    if (!$verbindung)
    {  echo "1error: no connection";
       exit;
    }
    else
    {
      if(isset($user) && isset($pass))
      {
        $sql = "SELECT * FROM `userdata` WHERE `user`='".$user."'";
            
        $result = mysql_db_query($db,$sql,$verbindung);
            
        if(mysql_affected_rows()==0)
        {
          $sqln = "INSERT INTO `userdata` (`id` , `user` , `pass`)"  
                . " VALUES ('','".$user."', '".$pass."');";
        
          echo("0ok");  
        }
        else
        {
          echo("1error: user already exists");
        }
            
      }
      else
      {
        echo("1error: no input data");
      }
    }
    mysql_close($verbindung);
    echo("*");
    ?>
    Ich hab mir $sql ausgeben lassen und so als SQL-Statement in phpMyAdmin eingetragen - und läuft, die Query hat also nichts. Aber warum fügt er das ganze nicht ein? Die SELECT-Abfrage lauft doch auch problemlos.

    Bin für jede Hilfe dankbar

    Geändert von MuadDib (19.02.2004 um 22:10 Uhr)

  2. #2
    Diese MySQL-Query's wie du sie verwendest hab ich bisher nie benutzt. Sieht mir auch etwas kryptisch aus.
    Mein Standardquery schau so aus:

    PHP-Code:
    $arguments "'$wert1','$wert2'";
    $fields "feld1,feld2";
             
    $einfuegen "INSERT INTO userdata ($fields) VALUES($arguments)";
    mysql_query($einfuegen,$verbindung); 
    So hab ichs seinerzeit aus Tab's Scripten gelernt.

  3. #3
    Zitat Zitat
    Original geschrieben von Chocwise
    mysql_query($einfuegen,$verbindung);[/php]
    Juhuuu!
    Vielen Dank, damit funktionierts - Die mysql_db_query lief bei mir bislang eigentlich immer gut, mysql_query war mir hingegen komplett neu - wie auch immer, damit laufts

    Vielen Dank!

  4. #4
    Hallo nochmal (Hallo Chocwise)

    Wieder selbiges Problem... die SQL Abfrage läuft, aber das einfügen mittels meines PHP-Codes (den ich einfach vom obigen Beispiel mittels Copy&Paste übernommen habe) klappt nicht... Warum nur...

    PHP-Code:
    else
    {
        if(isset(
    $atka) && isset($atkb) && isset($defa) && isset($defb) && isset($hpa) && isset($hpb) && isset($btlid))
        {
            
    $fields "'','$btlid', '$atka', '$defa', '$hpa', '$atkb', '$defb', '$hpb'";
            
    $sqln "INSERT INTO `tmpuser` ( `id` , `btlid` , `atka` , `defa` , `hpa` , `atkb` , `defb` , `hpb` )"
                  
    " VALUES ($fields);";

            
    mysql_query($sqln,$verbindung);

            echo(
    "0$sqln");
        }
        else
        {
            echo(
    "1error: no input data");
        }

    Für jede Hilfe wär ich dankbar

    EDIT: Es hat sich erledigt. Hach.. jetzt weiß ich wieder, warum ich JSP besser finde ^^. Den Fehler konnte ich beheben, indem ich einfach den Fehler, den ich beim letzten Mal gemacht habe, hier angewandt habe. Fragt mich nicht, warum auf einmal das geht, mir ists auch mittlerweile egal... hauptsache das Teil läuft...

    Geändert von MuadDib (07.03.2004 um 23:45 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •