Ich habe einen 10 jahre alten Code erneuen müssen und kommt jetzt einem Problem näher
Im Moment habe ich einn Unterschied zwischen mysql_* und mysqli_* Abfragen im Verdacht
Die wirkliche Anpassung ist dass ich die Aufrufe angepasst habe - also mysql_* nach mysqli_* und auch mysql_num_rows() nach Var->num_rows
PHP-Code:
$gest=$_POST['gest'];
# von 1 bis
$query="SELECT id FROM tm_nm_tips WHERE woche='$woche_id' AND saison='$saison_id'";
$ids=mysqli_query($db_connection,$query);
//$anz_ids=mysqli_numrows($ids);
$anz_ids = $ids->num_rows;
for ($id=0;$id<$anz_ids;$id++) {
$wert=mysqli_fetch_array($ids);
if ($gest[$wert['id']]==1) {
$new_spielt_status=1;
} else {
$new_spielt_status=0;
}
$query2="UPDATE tm_nm_tips SET spielt='$new_spielt_status' WHERE id='$wert[id]'";
mysqli_query($db_connection,$query2) or die($query2);
}
Verrückterweise liefert mir das Ergebnis jetzt nur 50 % der Einträge in die DB und NULLT die anderen.
In diesem script werden bis dahin eingetragene Datensätze komplettiert ... und am Ende gespeichert
Das hat unter mysql_* gut funktioniert
Die Datenbankabfrage liefert ein ARRAY mit 652 IDs zurück.
nach dem Abseneden bekomme ich jedoch für alle 652 IDs
Undefined offset: und ein
Undefined index: - alles in Line 27 - das ist
PHP-Code:
if ($gest[$wert['id']]==1) {
Verhält sich mysqli da strikter als mysql ?
Oder wurden ähnliche meldungen in mysql nur unterdrückt (oder ich hab irgendwo das errorhandling aktiviert? )
Wo kann ich hier nach dem Fehler suchen ?
merci für jedwede Hilfe
swissape