Seite 1 von 1

Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Verfasst: 15.10.2016, 00:44
von r23
Hallo,


Franky hat uns vor wenigen Tagen einen Fehler in MySQLDumper gemeldet
viewtopic.php?f=41&t=1784#p3868

Code: Alles auswählen

Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37
Dies trat in meiner Umgebung bei nicht definierten Werten auf.


Der Wert NULL steht für den nicht definierten Wert. Vergleiche mit diesem Wert liefern immer FALSE. So liefert die folgende Abfrage niemals ein Ergebnis:

Code: Alles auswählen

select auftrag_nr, pos
from auftrag_pos
where artikel_nr=NULL;
MySQLDumper verwendet leider nicht auch NULL für den Query sondern:

Code: Alles auswählen

select auftrag_nr, pos
from auftrag_pos
where artikel_nr="";

Für den korrekten Vergleich sind deshalb die Operatoren "is NULL" bzw. "is not null" zu verwenden. Die obige Abfrage lautet korrekt:

Code: Alles auswählen

select auftrag_nr, pos
from auftrag_pos
where artikel_nr is NULL; 
:roll:

Eine Abfrage auf is NULL ist zurzeit nicht möglich. Den Fehler in der Suche mit = "" anstelle is NULL verhindern wir im Script.

Änderungen sind bereits in unserer Entwicklungsumgebung veröffentlicht
https://github.com/r23/MyOOS/commit/7e9 ... 4aa5da3aea

Beste Grüße

Ralf

Re: Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Verfasst: 19.11.2016, 10:44
von Franky
Vielen Dank! Habe es geändert und jetzt funktioniert es einwandfrei! :D

Beste Grüße,
Franky

Re: Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Verfasst: 23.11.2016, 08:46
von klausi
Hallo Franky,

ich habe dasselbe Problem.
Kannst du mir sagen WAS GENAU du geändert hast damit es bei dir nun funktioniert?

Danke und Gruß
Klaus

Re: Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Verfasst: 25.11.2016, 12:24
von Franky
Hallo Klausi,

einfach dem o.A. Link folgen:

https://github.com/r23/MyOOS/commit/7e9 ... 4aa5da3aea

Änderung durchführen.
Rot raus - grün rein! :)

Gruß, Franky

Re: Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Verfasst: 28.11.2016, 13:50
von klausi
Hallo Franky,

danke für den Hinweis, habs nun in der Datei msd/inc/functions_sql.php ausgetauscht, ich bekommen aber immer noch folgenden Fehler:

Warning: Invalid argument supplied for foreach() in ......\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Muss auch in der Datei sql_record_update_inputmask.php nochwas geändert werden?


Danke und Grruß
Klaus

Re: Invalid argument supplied for foreach() in ~\inc\sqlbrowser\sql_record_update_inputmask.php on line 37

Verfasst: 05.12.2016, 10:26
von Franky
Mittlerweile habe ich auch festgestellt, dass folgende Fehlermeldung immer noch bei dem jüngsten Datensatz angezeigt wird:

Code: Alles auswählen

Warning: Invalid argument supplied for foreach() in /homepages/XXXXXXX/htdocs/moosd_os/inc/sqlbrowser/sql_record_update_inputmask.php on line 37
Alle anderen/vorherigen Datensätze/Tabellen können problemlos bearbeitet werden.

Wer weiß was noch zu korrigieren ist?

Beste Grüße,

Franky