Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
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:
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:
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 |
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Poste bitte mal den "alten" Code um einen Vergleich zu haben und für besseres Verständnis.
|
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Hallo,
PHP-Code:
Also wirklich nur die notwendigen Aenderungen (Parameter, mysql-> mysqli, Funktionsnamen) Greetz swissape |
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Was mir auf den ersten Blick auffällt, dass Du objektorientierten und prozeduralen Stil beim mysqli_* mischt. Benutze durchgehend nur einen von beiden Stilen.
Poste bitte mal die komplette Fehlermeldung(en). |
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Wie schon James sagt : "Couriosity killed the cat"
Keine Fehlermeldung, nur unterschiedliche Ergebnisse. mysql_* liefert komplettes Ergebnis, d.h. Ergebnisse für Heimteam und Auswärtsteam mysqli_* liefert NUR Ergebnisse für das Auswärtsteam Wir haben einen counter eingebaut. Wenn ich die Spiele lade sagt er 340+ Datensätze geladen, wenn ich sie dann mit dem abgebildeten Script jetzt verarbeite, d.h ändere - sind hinterher nur 174 verarbeitet und die Heimergebnisse sind leer. Erneutes Anzeigen zeigt dass er die Spiele für das heimteam einfach löscht Greetz swissape |
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Zitat:
Zitat:
Zitat:
|
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Ja sorry, aber das sind WARNINGS
Ich hab die jetzt nicht hier ... da ich nur von daheim auf alles zugreifen kann War so in etwa: WARNING Undifined offset 695347 in file .....tips_markieren_liga_do.php in row 27 für alle zeilen die ein SQL aus der DB zurückliefert (652 -695347 bis 69999 ) und einmal am Ende : WARNING Undifined Index : in file ...tips_markieren_liga_do.php in row 27 *ausinternemMemoryzitiert* Greetz swissape |
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Zitat:
ist aber der der durch drüken des Buttons ausgeführt wird, zumindest wie ich es sehe Das Teil wird m.E. aus diesem Script heraus aufgerufen wenn ich den Button "akt." drücke PHP-Code:
das mixing procedural - OO ist wieder mein Fehler, hab mir rausgesucht wie ich es in mysqli machen soll aber die beiden Styles nicht beachtet. Das setze ich ntürlich als ersten um auf procedural Und wie beschrieben, wenn ich das script zum ersten mal laufen lasse bekomme ich 347 (ist normal, dass nicht alle 652 Zeilen kommen) aus eine Datei eingelesen und angezeigt Erst wenn ich den Button "Akt." am Ende drücke fallen die Tipps für "h" weg - die für "a" bleiben drin. Wenn ich dann noch einmal aufrufe sehe ich dass alle H-Tipps weg sind, also leere Zeilen und in der DB mit Werten für Dummy-Tipp Greetz swissape |
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Gut. Der jetzt gepostete Code erzeugt lediglich die Ausgabe auf dem Bildschirm. In ihm wird nichts "gelöscht", da er nur SELECT's enthält. Was steht in der Datei admin.php? Diese Datei wird aufgerufen wenn Du auf "Akt." drückst.
|
AW: Abfrage unter mysql_* und mysqli_* liefert unterschiedliches Verhalten
Hallo vt1816
in der admin.php ist ein Rahmen von dem die Unterprogramme aufgerufen werden und die Button aktiviert und deaktiviert werden. Erst wird die tips_markieren_liga_form.php aufgerufen und von hier dann über den Button "Akt." Ueber diesen Button wird mM nach durch diesen Code-teil : Code:
<form method="post" action="admin.php"> ausgeführt, welcher den Update später macht und irgendwie die Heimtipps verliert. Greetz swissape |
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:17:54 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.