Krisse: Übernahme von SQL-Variable in neue Anfrage

Hallo,

ich kämpfe seit Stunden mit folgendem Problem: Durch das Drücken eines Buttons soll abgefragt weren wie viele Anfragen für eine Lizenz vorliegen, anschließend soll diese Zahl in eine neue Bestellung eingefügt werden und der Anfrage die ID der Bestellung zugeordnet werden. In den letzten Tagen habe ich es geschafft alles umzusetzen, bis auf folgendes:

Damit die letzte ID aus der Tabelle Befragungen ordentlich ausgegeben wird, muss ich diese in der Variable Eintrag mitabfragen. Diese kann ich aber nicht so direkt in die Tabelle Abfragen eintragen. Könnt Ihr mir dabei helfen diesen Knackpunkt zu beheben? Befehle wie mysql_fetch_row oder mysql_result habe ich ausprobiert und die Listen von möglichen Befehlen angeschaut aber keinen gefunden mit dem ich diese Aufgabe durchführen könnte.

Vielen Dank schon im voraus
Krisse

  
if(isset($_POST['gesendet']))  
   {  
   $nn = mysql_query ("SELECT COUNT(anfrage.ID)  
   FROM anfrage  
   LEFT JOIN bestellungen  
   ON anfrage.Bestellungen_ID = Bestellungen.ID  
   WHERE anfrage.Bestellungen_ID IS null");  
   list($summe) = mysql_fetch_row($nn);  
  
   $eintrag = "INSERT INTO Bestellungen (ID, Bestelldatum, Anzahl) VALUES (NULL, CURRENT_TIMESTAMP, " . $summe . ");";  
   $eintrag .= "SELECT LAST_INSERT_ID()";  
   //Hier sollte die oben abgefragte ID so formatiert werden, dass sie als Integer in der Variable Update verwendet werden kann.  
  
   $update = "UPDATE anfrage SET Bestellungen_ID = " . $bestnr . " WHERE Bestellungen_ID IS NULL";  
  
   mysql_query ($eintrag);  
   mysql_query ($update);  
   echo "Wir müssen $summe Lizenzen bestellen.";  
   }  

  1. Hi!

    $eintrag = "INSERT INTO Bestellungen (ID, Bestelldatum, Anzahl) VALUES (NULL, CURRENT_TIMESTAMP, " . $summe . ");";
       $eintrag .= "SELECT LAST_INSERT_ID()";

    Zwei Statements in einem mysql_query()-Aufruf geht sowieso nicht. Brauchst du auch nicht, es gibt eine PHP-Funktion, die die letzte automatisch erzeugte ID abfragen kann.

    $update = "UPDATE anfrage SET Bestellungen_ID = " . $bestnr . " WHERE Bestellungen_ID IS NULL";

    Wenn diese ID allerdings $bestnr sein soll, kannst du dort das LAST_INSERT_ID() einsetzen.

    Lo!