hab jetzt eine längere post verloren
hier kurz zusammengefasst:
- hab die beiden nix posts gelöscht.
- versuch
PHP-Code:if($_SESSION[user])
user da
else
user net da
Bin am Ende .... habe ganz normal eine Session gestartet mit
PHP:--------------------------------------------------------------------------------
session_start();
--------------------------------------------------------------------------------
.
Auf der Website habe ich ein Formular mit action=phpself und nun sind zweimal exakt die gleiche if-Abfrage
Nun habe ich folgendes Phänomen. Bei der ersten if-Schleife funktioniert alles und bei der zweiten ERST nachdem ich mit F5 einen Browser Refresh durchgeführt habe. Hat jemand schon mal sowas erlebt ? An was kann das liegen ?PHP-Code:if(isset($_SESSION['user'])) {
mach das
}
else {
mach das
}
Geändert von Raik (18.06.2003 um 12:27 Uhr)
hab jetzt eine längere post verloren
hier kurz zusammengefasst:
- hab die beiden nix posts gelöscht.
- versuch
PHP-Code:if($_SESSION[user])
user da
else
user net da
das ist doch beides das gleiche ...
bis auf die ' bei den [ ]
grüsse
daniel
ja und ?
ausserdem ist in deiner schleife die funktion isset ()
eigentlich ist es ja auch nicht logisch, das es nicht funktioniert!
aber probieren geht über studieren!
schau dir doch mal den Code vorher genauer an!
ist nicht meine schleife, aber okay ;o)ausserdem ist in deiner schleife die funktion isset ()
nein du hast recht, daß isset habe ich vergessen, aber eigentlich sollte es dann erst recht nicht funktionieren, zumindest nicht nach "logik"
jedem das seine ...aber probieren geht über studieren!
grüsse
daniel
- das ist keine schleife- aber egal.
vorgeschlagen hab ich das, weil ich kein freund von isset bin, da ich nicht wirklich die Notwendigkeit der Funktion sehe.
Drehe ich die Logik in einer <b>Verzweigung</b> um, und prüfe auf Vorhandensein eines Wertes in einer Variable habe ich automatisch sämtliche anderen Fälle wie
0, NULL, '' und nichtexixtenz der Vairable im Elsezweig abgefangen.
Ich will der funktion jetzt nicht die Existenz abschreiben, da sie sicher für den einen oder anderen Anwendungsfall benötigt wird, is halt meine Art zu programmieren.
Selbe glaub ich eigentlich auch nicht, dass mein Vorschlag eine Lösung des Problems bringen wird. Ich vermute eher, dass irgendwo im Code selbst noch ein kleiner 'Hund' versteckt ist.
Und da wir nicht mehr Code zur Verfügung haben, bleibt uns wohl nix anderes übrig als zu 'vermuten' und zu probieren.
Wenn du natürlich andere konstruktive Vorschläge zur Lösung des Problems hast - nur raus damitich seh mich nicht als unfehlbar.
hmm, das ist ein gutes argument. so hatte ich es nicht betrachtet.Ich will der funktion jetzt nicht die Existenz abschreiben, da sie sicher für den einen oder anderen Anwendungsfall benötigt wird, is halt meine Art zu programmieren.
ich glaube, mein erstes posting hier klang zu "negativ" und "abwärtend", sorry, so war es nicht gemeint - aber das solltest du - glaube ich ... hoffe ich ;o) - wissen.
aber ich frage mich gerade, warum du das isset() meidest. es löst wohl nicht das problem hier und wird ot, aber es interessiert mich ...
das isset() nutze ich bspw. relativ häufig, dafür genau die version, die du genutzt hast weniger. bei mir ist gedanklich der grund da, daß das if-konstrukt ja als ergebenis ein true erwartet. ist aber
$vari = "hallo";
denn true??
ein grübelnder
daniel
hab halt auch einen schlechten tag erwischt und bin selber ein bissl blöd rübergekommen - vergessen. ok?
zu deiner frage: ja. da eine if nur auf bool prüft und eine Variable nur dann false ist, wenn diese 0,'',FALSE oder eben nichtexistent ist, ist - ist jeder andere Wert True.
Aufzupassen ist natürlich, wenn hier auf die Existenz von arraywerten generell geprüft werden soll.
ein if($arr) bringt (jetzt vorsichtig gesagt) nix, da nur der pointer abgefragt wird. Ergo sind für Arrays eben empty oder is_array gefragt.
zu isset: isset checkt nur ob eine Variable existent ist oder nicht. somit ist das für mein Verständnis eine Teilmenge von False und eben dann nur für spezielle Fälle anwendbar, wo ich explizit auf noch nicht Vorhandensein einer Variable eine Aktion auslösen will.
Da mir aber das noch nicht in meinen Scripts untergkommen ist und ich mit dem isset schon einige Logik-Ditches gebaut hab, meide ich das ding hat. Anders gehts für mich halt auch.
wunderbar, verstanden.
es gibt halt doch nicht immer nur rot und grün ... gelb soll auch existieren (wo auch immer) ...
grüsse
daniel
.
Geändert von Radoo.de (16.10.2003 um 03:24 Uhr)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)