• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Falsche weiterleitung....

Status
Für weitere Antworten geschlossen.

marlin-b

Neues Mitglied
Ich habe diesen Script auf einer Homepage von mir:
PHP:
// $numm = mysql_num_rows ($result);

$numm = "1";

if ($numm == 0)  
{
header("Location: /Eintragen/index.php");
}else{
header("Location: /Fehler/index.php");
}

Ich habe $numm = mysql_num_rows ($result); extra ausgetauscht, nur fürs testen.
Meiner Ansicht ist $numm = 1 also müsste die Weiterleitung nach Fehler/.. gehen. Es wird aber immer nach Eintragen/.. weitergeleitet.

wenn ich es so mache:
PHP:
// $numm = mysql_num_rows ($result);

$numm = "1";
echo"$numm";

if ($numm == 0)  
{
header("Location: /Eintragen/index.php");
}else{
header("Location: /Fehler/index.php");
}
Dann geht die weiterleitung...

Ich bin fast am verzweifeln....


need help Marlin
 
Werbung:
== 1 und == "1" ist nen unterschied.

echo und header(); macht ärger da der seitenheader nichtmehr nach einer ausgabe geändert werden kann :)
 
Werbung:
dennoch vergleich ich keinen string mit einem intger, wie welche php version ds mag oder nicht spielt keine rolle, es ist und leibt ein no-go

soweit ich weiss ist
"1" == 1 ein alias von "1" == true

demnach ist dies sowieso sehr wacklig, ich kann dir garnicht 100% sagen wie php das ganze interpretiert, jedoch wäre ich damit verammt vorsichtig, abweichungen zwischen php 3,4 und 5 gibt es dort bestimmt.

wenn ich sowas mache, dann ordentlich:

if((int)1 === $foo)
so bist du auf der sicheren seite und kannst dir durch die === sogar ein (int) sparen :)
der typen unter php sind wirklich gruselig gelöst, ich finde man könnte wenigstens ein paar unterscheidungen machen ...
 
Ich habe das nun geänder. Geht aber leider immer noch nicht.
Wenn ich header("Location:... austausche durch echo "ja/nein", dann wird es auch richtig angezeigt.
Aber wenn ich wieder header.. einfüge, dann leitet der immer auf die falsche Seite weiter. Sogar wenn ich die Variable umbenenne....(omg)

Marlin
 
Werbung:
vielleicht sollte er erstmal gucken was error_reporting( E_ALL ); sagt ^.^ da sein zweites beispiel das geht ja schon nicht valide ist *gg*
 
Werbung:
Ich habe jetzt einfach über HTML die weiterleitung gemacht...
Über Localhost geht der Script.....

@freak131: Ja das ist extra.
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück
Oben