PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   wieso macht er meine IF abfragen doppelt? (http://www.selfphp.de/forum/showthread.php?t=23880)

professorbass 24.12.2010 14:22:08

wieso macht er meine IF abfragen doppelt?
 
Warrum macht er immer:
Antwort
Antwort
wen mann die seite zum erstenmal aufruft?

PHP-Code:

if($_POST["q"] == "") {
if(
end($_SESSION['g']) ==  "Antwort" and end($_SESSION['g']) != "<br>Antwort") {
$echo "<br>C:\>";
}
else if(
end($_SESSION['g']) == "<br>Antwort" and end($_SESSION['g']) != "Antwort") { 
$echo "<br>Antwort";
}
else if(
end($_SESSION['g']) != "Antwort" or end($_SESSION['g']) != "<br>Antwort") {
$echo "Antwort"
}



DokuLeseHemmung 24.12.2010 14:30:22

AW: wieso macht er meine IF abfragen doppelt?
 
Hmmm...

Bei mir sagt es:

Code:

Notice: Undefined index: q in gg.php on line 10

Warning: end() expects parameter 1 to be array, null given in gg.php on line 11

Warning: end() expects parameter 1 to be array, null given in gg.php on line 14

Warning: end() expects parameter 1 to be array, null given in gg.php on line 17


professorbass 24.12.2010 19:09:34

AW: wieso macht er meine IF abfragen doppelt?
 
Mach mal aus:
PHP-Code:

if($_POST["q"] == "") { 

Das:
PHP-Code:

if($_POST['q'] == "") { 

Das anfürungszeichen is da wohl der fehler! *gg*

Aber er macht drozdem doppelt

DokuLeseHemmung 24.12.2010 19:14:07

AW: wieso macht er meine IF abfragen doppelt?
 
Nöö...
Das hilft nicht!
Die Meldungen bleiben gleich.
Und bei dir würden sie auch erscheinen, wenn du dein error_reporting aktivieren würdest.

isset() könnte helfen das Problem in den Griff zu bekommen...


PHP-Code:

<?php
error_reporting
(-1);
ini_set('display_errors'TRUE);
 
session_start();


if(
$_POST['q'] == ""

  if(
end($_SESSION['konsole']) ==  "Antwort" and end($_SESSION['konsole']) != "<br>Antwort")
  { 
    
$echo "<br>C:\>"
  } 
  else if(
end($_SESSION['konsole']) == "<br>Antwort" and end($_SESSION['konsole']) != "Antwort"
  {  
    
$echo "<br>Antwort"
  } 
  else if(
end($_SESSION['konsole']) != "Antwort" or end($_SESSION['konsole']) != "<br>Antwort"
  { 
    
$echo "Antwort";  
  } 


echo 
$echo;

?>

Wozu ist das end() überhaupt da?
Wieso meinst du dich auf die Reihenfolge in $_SESSION verlassen zu können?

professorbass 25.12.2010 04:43:41

AW: wieso macht er meine IF abfragen doppelt?
 
Weil ich die Reihenfolge bestimme in einem anderen teil.
das ist schon richtig mit dem end das brauche ich. weil die Session noch mit anderen Sachen gefüllt wird und dann am Ende kommen diese abfragen dazu...

professorbass 25.12.2010 06:43:03

AW: wieso macht er meine IF abfragen doppelt?
 
Zitat:

Zitat von professorbass (Beitrag 139699)
Weil ich die Reihenfolge bestimme in einem anderen teil.
das ist schon richtig mit dem end das brauche ich. weil die Session noch mit anderen Sachen gefüllt wird und dann am Ende kommen diese abfragen dazu...

um es besser vorzustellen habe ich es mal hochgeladen.
es geht darum alte Klassiker spiele zu starten wie PacMan usw als Flash Games.
aus spaß an der Freude bin Retrogamer und will mir so eine Homepage basteln.

dämmit man es sich besser vorstellen kann was das Ziel ist:
Link

Ein freund macht gerade noch eine Comodore Oberfläche mit Flash.
ich kenne mich nur bissel mit php aus und kein Flash. die Bedingung war eben das ich alleine das dos mache...
hoffe mit wird geholfen fehlt ja nichtmehr viel fast fertig freu!

DokuLeseHemmung 25.12.2010 12:58:29

AW: wieso macht er meine IF abfragen doppelt?
 
Nichts desto Trotz sind 6 mal end() min. 5 mal zu viel. Denn das $_SESSION Array wird nicht zwischen durch verändert.

professorbass 25.12.2010 15:33:14

AW: wieso macht er meine IF abfragen doppelt?
 
Hä verstehe ich nicht finde kein end zuviel

LINK

Das ist der aktuelle stand funktioniert gut.
aber erlich ich finde kein end was zuviel währe ???

rarios 27.12.2010 00:18:06

AW: wieso macht er meine IF abfragen doppelt?
 
Doku ich lehne mich sehr weit aus dem Fenster heraus und sage es sind alle 6 zuviel ;)

professorbass:
Ohh nur ein end: $var = end($_SESSION['konsole']);

knight1 27.12.2010 01:21:45

AW: wieso macht er meine IF abfragen doppelt?
 
Zitat:

Zitat von rarios (Beitrag 139715)
Doku ich lehne mich sehr weit aus dem Fenster heraus und sage es sind alle 6 zuviel ;)
...

Sehe ich genauso.
Man kann ja die einzelnen Array-Elemente separat abfragen ohne jedesmal den internen Zeiger auf das letzte Element (Gibt es noch Sub-Elemente unterhalb 'konsole'?) zu setzen.


Außerdem ist nicht zu erkennen wo das Element 'konsole' her kommt da die Session nur mit session_start() gestartet wird ohne eine bestimmte Session mit Angabe der Session-ID zu rekonstrurieren.


Kai aka Knight1


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:33:14 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.