Select, left join &insert Problem

barney_hh

Mitglied
Hallo!

Ich habe folgendes vor: aus der mysql Tabelle artikel möchte ich die Artikelnummer (=id) in eine andere (= bestell_pos) mysql Tabelle übertragen. Dabei sollen nur die Artikelnummer übertragen werden, die folgende Bedingung erfüllen:

In der Tabelle warenkorb und in der Tabelle kunde ist jeweils eine Spalte sid – diese enthält die session_id(); d.h. er soll die Tabellen durchsuchen und vergleichen, für jeden Wert übereinstimmenden Wert soll prod_id aus der Tabelle warenkorb übernommen werden und in die Tabelle bestell_pos geschrieben werden. Ich habe es damit versucht:

PHP:
$id_bez="Select prod_id FROM kunde LEFT JOIN warenkorb USING (sid) where sid='$session'";
$id_erg=mysql_query($id_bez);
$h=mysql_num_rows($id_erg);
FOR ($k=0; $k<$id_erg; $k++)
		{
		$testy=mysql_result($id_erg, $k, "prod_id");
		$testx="INSERT into bestell_pos (id) values ('$testy')";
		mysql_query($testx);
		}

Leider kommt folgende Fehlermeldung:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\programme\wamp\homepages\shop\bestellung.php on line 49

Die Zeile 49 =“$h=mysql_num_rows($id_erg);“ . Ich weiß nicht, woran das liegen könnte. Vielleicht könnt ihr ja mir helfen…

Danke schön!
 
So eine Fehlermeldung kommt immer wenn man versucht auf Daten zuzugreifen
wenn keine da sind :-)
In deinem fall ergibt dein Select keinen Datensatz als Ergebnis
warscheinlich ist der Sql Query falsch

$id_erg=mysql_query($id_bez) or die(mysql_error());

hilft da weiter :-)
 
Das Thema hat sich erledigt und hätte auch in diesem beitrag zu weit geführt.
Habe barney_hh schon geholfen.

ergebnis:
PHP:
$id_bez="Select prod_id FROM warenkorb LEFT JOIN  kunde USING (sid) where warenkorb.sid='$session' AND kunde.sid='$session' ";

MfG

Ultrasonic
 
Zurück