IF - Abfrage funktioniert nicht
Schotti
- php
0 Severin Kacianka0 Schotti
0 Dieter Raber0 Schotti
0 flashnfantasy
Hallo,
könnt ihr mir bitte helfen, ich habe eine IF - Abfrage in PHP
geschrieben, jedoch funktioniert diese nicht und ich weiß einfach
nicht warum! Ich finde einfach keinen Fehler! Es wird auch der
richtige Wert zurück geliefert also in diesem Fall hat die Variable
$beschreibung den Wert "ja".
Hier der Quelltext:
if($beschreibung != ja)
{
echo '<a href="beschreibung.php">- Beschreibung für diese Koje erfassen -</a>';
echo '</strong></font></div>';
}
else
{
echo '</strong></font></div>';
}
Vielen Dank für die Hilfe!
Gruß
Schotti
Hallo,
if($beschreibung != ja)
wie wäre es mit $beschreibung != "ja" (Anführungszeichen!)?
Gruß,
Severin
Hallo,
ich hatte es auch schon in "" geschrieben, das funktioniert trotzdem
nicht!
Gruß
Schotti
Hallo,
ich hatte es auch schon in "" geschrieben, das funktioniert trotzdem
nicht!
Dann hast du zu wenig Quelltext angegeben um den Fehler zu finden. Stelle dir folgende Fragen:
Was soll passieren?
Was passiert?
Welchen Wert haben alle verwendeten Variablen (bei dir im besonderen $beschreibung)?
Wenn ich weiter raten müsste, würde ich sagen, du hast die If-Logik vielleicht vertauscht. Kann es sein, dass der Link erscheinen soll, wenn $beschreibung ja ist und nicht umgekehrt?
Gruß,
Severin
Kann es sein, dass der Link erscheinen soll, wenn $beschreibung ja ist und nicht umgekehrt?
Hallo,
ich habe mir die Variable schon ausgeben lassen und sie gibt auch den gewünschten Wert zurück. Diese Variable kann nur den Wert "ja" oder "nein" annehmen. Der Link soll nur erscheinen wenn der Wert "nein" ist!
Ich habe es auch schon ander herum porbiert und habe gesagt
if($beschreibung = "nein")
{
...
}
das hat aber auch nichts gebracht.
Gruß
Schotti
Hallo,
if($beschreibung = "nein")
es müsste $beschreibung == "nein" heißen. Aber wie gesagt, ich vermute der Fehler liegt irgendwo anders in deinem Skript. Und da du dich noch nicht allzu lange mit PHP zu beschäftigen scheinst, dürfte es wohl ein "Trivialfehler" sein. Bist du sicher, dass alle Klammern, Anführungszeichen und so weiter richtig gesetzt sind?
Gruß,
Severin
es müsste $beschreibung == "nein" heißen
Hallo,
danke jetzt funktionierts! Ich schau jetzt schon seit einer guten Stunde den Quelltext an und bin einfach nicht darauf gekommen!
Gruß
Schotti
Hallo Schotti,
es müsste $beschreibung == "nein" heißen
danke jetzt funktionierts! Ich schau jetzt schon seit einer guten Stunde den Quelltext an und bin einfach nicht darauf gekommen!
ein Blick ins Handbuch hätte geholfen ...
Grüße aus Nürnberg
Tobias
Hallo Schotti,
Dein Stueck Quellcode ist zu klein, man muesste wissen, was in $beschreibung steht, bzw. wie es da rein kommt, um dir weiterhelfen zu koennen. Es faellt allerdings auf, das 'ja' bei dir nicht in Anfuehrungsstrichen steht und demanch die Konstante 'ja', nicht der String 'ja' gemeint ist. Das halte ich, so ins Blaue gersten, aber fuer ziemlich unwahrscheinlich. Es waere demnach hilfreich, du wuerdest dein Script anfangen mit 'error_reporting(2047);', dann wuerdest du vermutlich auch ein paar brauchbare Fehlermeldungen bekommen.
PS.: Du wuerdest Dir einen sehr grossen Gefallen tun, wenn Du anstatt dem urtuemlichen <font> CSS benutzen wuerdest.
Gruß,
Dieter
Hallo Dieter,
in der Variablen $beschreibung steht der Wert "ja" das würde heißen, dass der link nicht angezeigt werden sollte.
Hier der Part der vor der IF-Abfrage passiert
echo '<br><br>';
echo $beschreibung;
echo '<br><br>';
echo '<div align="center"><font face="verdana" size="3"><strong>';
echo '<a href="bilderupload.php">Weiteres Bild erfassen</a>';
echo '<br><br>';
if($beschreibung = 'nein')
{
echo '<a href="beschreibung.php">- Beschreibung für diese Koje erfassen -</a>';
echo '</strong></font></div>';
}
else
{
echo '</strong></font></div>';
}
Gruß
Schotti
Hallo Schotti,
Severin hat ja schon erklaert, dass $beschreibung = 'nein' eine Zuweisung ist und du $beschreibung == 'nein' fuer einen Vergleich einsetzen musst. Hast du denn, wie empfohlen, das error_reporting(2047) gesetzt? Wohl eher nicht, oder?
Gruß,
Dieter
dann beginn mal mit der Fehlersuche...
Was ich als erstes versuchen würde...
print "-$beschreibung-<br>";
if($beschreibung != "ja")
{
echo '<a href="beschreibung.php">- Beschreibung für diese Koje erfassen -</a>';
echo '</strong></font></div>';
}
else
{
echo '</strong></font></div>';
}
Und mal schauen ob wirlich unter Beschreibung "ja" oder "nein"
steht, und ob eventuell Leerzeichen dahinter sind (denn das kann schon mal übersehen werden)
Was auch ein Fehler sein könnte
href="beschreibung.php"
in Slashes setzen
href="beschreibung.php"
Aber schau dir doch mal denHTML-Code dazu an
Hallo,
Was auch ein Fehler sein könnte
href="beschreibung.php"
in Slashes setzen
href="beschreibung.php"
nein, da der Code der Ausgegeben werden soll in einfachen Anführungszeichen steht, müssen doppelte nicht maskiert werden.
Grüße aus Nürnberg
Tobias
Hallo flashnfantasy,
href="beschreibung.php"
in Slashes setzen
href="beschreibung.php"
Das ist nicht so, weil der String ja insgesamt in einfachen Anfuehrungszeichen steht.
Gruß,
Dieter