Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] if mal wieder (https://www.delphipraxis.net/1703-%5Bphp%5D-if-mal-wieder.html)

CalganX 18. Dez 2002 18:01


[PHP] if mal wieder
 
und mal wieder: IF!!!

Naja, ich kann leider nix dafür, aber in folgender Zeile meldet er immer einen Parse Error:

Code:
  if($HTTP_POST_VARS["ID"] != "") {
Why? Denn die Variable müsste theoretisch "" sein...

Chris

Chewie 19. Dez 2002 10:36

Wenn du einen Parse-Error hast, hat das nichts dem Wert der Variable zu tun, sondern mit der Syntax. D. h. die if-Abfrage wird gar nicht durchgeführt, da dein Code syntaktisch falsch ist. Die von dir angegebene Abfrage ist aber syntaktisch korrekt. Vielleicht hast du weiter oben ein Semikolon oder ein Gänsefüßchen vergessen?

Privateer3000 19. Dez 2002 11:19

Entferne die Gänsefüsschen im array. die sinds.


Grüsse

Privateer3000 19. Dez 2002 11:23

alternativ kann du auch so die variablen abfragen:

if($id<>"")
oder
if(!$id=="")
achja VErgleichsoperatoren müssen mit dopppelten Gleichheitszeichen gesetzt werden.

Chewie 19. Dez 2002 11:54

Zitat:

Zitat von Privateer3000
Entferne die Gänsefüsschen im array. die sinds.

Wieso? In einem assoziativen Array wird ein Index mithilfe eines Strings angegeben. Und ein String muss in Hochkommas bzw. Gänsefüßchen stehen.

CalganX 19. Dez 2002 13:19

Hi,
so das Problem hat sich erledigt: hatte in einer Zeile davor das Semikolon vergessen. :oops:
Es lebe der Delphi-Debugger!

Chris

Privateer3000 19. Dez 2002 15:26

Zitat:

Zitat von Chewie
Zitat:

Zitat von Privateer3000
Entferne die Gänsefüsschen im array. die sinds.

Wieso? In einem assoziativen Array wird ein Index mithilfe eines Strings angegeben. Und ein String muss in Hochkommas bzw. Gänsefüßchen stehen.

HAst recht Chewie, nur wenn das array sich schon innerhalb eines String befindet.
Aber es auch ohne.PHP erkennt arrays auch so, nur eckige klammern müssen es sein.

Chewie 19. Dez 2002 16:58

Zitat:

Zitat von Privateer3000
PHP erkennt arrays auch so, nur eckige klammern müssen es sein.

Das liegt daran, dass Strings, die nicht in Kochkommata gesetzt sind als Konstanten aufgefasst werden. PHP ist aber so schlau und prüft, ob eine Konstante mit diesem Namen überhaupt definiert wurde. Wenn das nicht der Fall sein sollte, dann wird es als String aufgefasst. Da aber zunächst einmal der String bzw. Nichtstring mit der Konstantenliste abgeglichen werden muss, hast du entsprechend höhere Ausführzeiten. Und ob jetzt ein String als Array-Index benutzt wird oder als sonstwas spielt da keine Rolle.

Privateer3000 19. Dez 2002 22:48

wow

:shock:


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz