[Allegro] rset.php hat einen fehler, der nur unter php 5.x sichtbar wird

Klaus Lehmann lehmann_klaus at t-online.de
Mo Nov 14 19:50:06 CET 2011


Guten Tag [Frau/Herr] Jörg Oberfell,
danke für Ihre Nachricht.
Am Samstag, 12. November 2011 um 11:55 schrieben Sie mir.


guten tag herr oberfell, 
danke für ihre antwort.


> Lieber Herr Lehmann,

...
>>> Mit einem einelementigen Array, z. B.
>>>      $erg = array("");      // Array mit einem Element (leerer String)
>>>      if(substr($erg[0],0,2)=="i="){}
>>> ist die Meldung dann weg.
> Das war nicht(!) als Lösung gedacht, sondern als Test, um die 
> Fehlermeldung zu provozieren bzw. um zu zeigen, dass die Meldung im 
> zweiten Beispiel [$erg = array("")] nicht mehr auftritt, denn im 
> einelementigen Array kann problemlos auf das erste Element zugegriffen
> werden.
knirsch. das hatte ich dann auch stunden später gesehen. nur kann ich 
sowas nicht in "lebende" kataloge einbauen. derzeit kannich noch nicht 
mal sagen, wie die fehlermeldung erzeugt wird. es sind merkwürdige 
IP-adressen, die dieses verursachen. evtl bösartige skripte, die nach 
"löchern" suchen.


es sind ja nur NOTICE-fehlermeldungen. deshalb erstmal "kopp in den 
sand", wie ein kamel ;-)
ich muss erstmal das "fehlermeldungsverhalten" analysieren, dann kann 
ich zu ihrem ansatz gehen (s.u.)

>> ein anderer ansatz ist auch:
>> wir geben explicit an dieser stelle gar keine fehlermeldungen raus!
>> und zwar so: (seit gestern abend getestet)
>>
>> in der rset.php um ein "@" ergänzt
>> if(substr(@$erg[0],0,2)=="i=").
>> ist das "kopf in den wüstensand stecken"?



> Man müsste zunächst prüfen, ob semantisch gesehen eine leere Antwort 
> gültig ist, oder aus semantischer Sicht einen Fehler bedeutet. Dann 
> würde ich Folgendes vor die problematische Zeile setzen:

> if (count($erg) == 0) {  // Ergebnis-Array ist leer
>     //entweder leere Antwort oder aber Fehlermeldung ausgeben
> }
> else if (substr(@$erg[0],0,2)=="i="))
> ...
> Viele Grüße,
> Jörg Oberfell



-- 
Mit freundlichen Grüßen,
Ihr Klaus Lehmann
* http://allegronet.de * eMail: allegronet at t-online.de * phone: 03528-452 807(fax 809) * mobil: 0171-953 7843
* allegronet.de * Klaus Lehmann * D-01454 Radeberg * Kleinwolmsdorfer Str. 37
* Software für zufriedene Bibliothekare: 1000x bewaehrt und ergiebig
* Bereits 4x allegro-utf8. Buchen Sie die allegro-Roadshow
* Yes we can. Only with allegro. Yes we do. Allways with allegro.
* Internetkataloge&WebHosting für Allegro-C
* 2011: Sponsor der Peter-Sodann-Bibliothek (Staucha)









Mehr Informationen über die Mailingliste Allegro