Hallöchen,
hier erstmal der Quelltext:
Mein Problem:
Tja, dass wüsste ich gerne. Im Prinzip läuft das Script selber einwandfrei. Die Abfragen und Variablenbelegungen sind 100% richtig. Er holt den richtigen Datensatz zur richtigen ID und erhöht die einblendungen korrekt (um 1).
Wenn ich aber nun das Script ausführe, auf die erste Datenbank Abfrage beispielsweise die Zeilen (mit der ID) 1,2,4 und 7 zutreffen (siehe $zahlen), die ZufallsID 4 ist, dann erhöht er nicht nur die Einblendungen bei 4, sondern (glaube willkürlich) auch bei einem oder mehr anderen Datensätzen.
Wenn ich den Update-Befehl manuel in PhpMyAdmin ausführe funktioniert es einwandfrei.
Darausschließe ich, dass der Fehler weder im Script, noch in der Datenbank liegt, sondern irgendwo in den tieferen Ebenen....
Kennt jemand das Problem bzw. kann mir helfen?
Grüße,
Mordred
hier erstmal der Quelltext:
PHP-Code:
include('connect.php');
//Hole Partnern
$partner_befehl="SELECT * FROM werbung WHERE aktiviert='1' AND einblendungen <= gebucht-1";
$partner_abfrage=mysql_query($partner_befehl);
while($partner=mysql_fetch_array($partner_abfrage)) {
$moegliche_zahlen.=$partner['id']." ";
echo('Mögliche Zahlen (in String):'.$moegliche_zahlen.'<br>');
}
$moegliche_zahlen=chop($moegliche_zahlen);
$zahlen=explode(" ",$moegliche_zahlen);
echo('Elemente in Array $zahlen: '.count($zahlen).'<br>');
shuffle($zahlen);
$id=$zahlen[0];
echo($id.'<br>');
//Hole Daten für ID
$partnerdaten_befehl="SELECT * FROM werbung WHERE id='".$id."'";
$partnerdaten_abfrage=mysql_query($partnerdaten_befehl);
$partnerdaten=mysql_fetch_array($partnerdaten_abfrage);
//Erhöhe Einblendungen um 1
$einblendungen_vorher=$partnerdaten['einblendungen'];
echo('Einblendungen vorher: '.$einblendungen_vorher.'<br>');
$einblendungen_nachher=$einblendungen_vorher+1;
echo('Einblendungen nachher: '.$einblendungen_nachher.'<br>');
$werbepartner="UPDATE werbung SET einblendungen=$einblendungen_nachher WHERE id='".$id."'";
echo('Qry: '.$werbepartner.'<br>');
Tja, dass wüsste ich gerne. Im Prinzip läuft das Script selber einwandfrei. Die Abfragen und Variablenbelegungen sind 100% richtig. Er holt den richtigen Datensatz zur richtigen ID und erhöht die einblendungen korrekt (um 1).
Wenn ich aber nun das Script ausführe, auf die erste Datenbank Abfrage beispielsweise die Zeilen (mit der ID) 1,2,4 und 7 zutreffen (siehe $zahlen), die ZufallsID 4 ist, dann erhöht er nicht nur die Einblendungen bei 4, sondern (glaube willkürlich) auch bei einem oder mehr anderen Datensätzen.
Wenn ich den Update-Befehl manuel in PhpMyAdmin ausführe funktioniert es einwandfrei.
Darausschließe ich, dass der Fehler weder im Script, noch in der Datenbank liegt, sondern irgendwo in den tieferen Ebenen....
Kennt jemand das Problem bzw. kann mir helfen?
Grüße,
Mordred
Kommentar