Hallo,
ich habe folgende PHP-Funktion in einen Link eingebaut:
<a <?php if($id=="start"){echo "class=bold";} else{echo "class=normal";} ?> href="index.php?id=start" >Start</a>
Das komische ist, dass es bei der PHP-Version 4.3.4 funktioniert, aber bei der Version 4.3.6 nicht.
Ist es so, wie ich es gemacht habe überhaupt zulässig, oder macht man es anders?
Kann mir jemand sagen, was daran falsch ist?
Danke im Voraus
Erri
Ankündigung
Einklappen
Keine Ankündigung bisher.
PHP-Funktion (IF) im Link
Einklappen
Neue Werbung 2019
Einklappen
X
-
Ein Gast antwortete$_REQUEST bei if (!isset...)
Zitat von ErriGuten Morgen,
gestern habe ich mein Problem mit $_REQUEST gelöst.
Hier funktioniert es leider nicht.
if (!isset($id)) {
$id="index";
}
--> dies funktioniert nicht (außer register globals on)
if (!isset($_REQUEST['id'])) {
$id="index";
}
--> dies funktioniert aber auch nicht
Wisst ihr, wie ich es diesmal machen kann?
Danke
Erri
-
Ein Gast antworteteGuten Morgen,
gestern habe ich mein Problem mit $_REQUEST gelöst.
Hier funktioniert es leider nicht.
if (!isset($id)) {
$id="index";
}
--> dies funktioniert nicht (außer register globals on)
if (!isset($_REQUEST['id'])) {
$id="index";
}
--> dies funktioniert aber auch nicht
Wisst ihr, wie ich es diesmal machen kann?
Danke
Erri
Einen Kommentar schreiben:
-
Zitat von ErriWieso das denn? Was hat das für Gründe?
aus $_GET, $_REQUEST abzugreifen ist schlicht logischer. Weil du so immer weist, wo es her kommt.
Das Ding kann dir auch nicht zufällig mit irgendeiner anderen $id ins Gehege kommen.
Ein potenzieller Angreifer kann dir auch nicht einfach mal so eine $id unterschieben, wo keine von aussen hin soll
Je nach Hosters ist es nunmal OFF ...^^
Einen Kommentar schreiben:
-
Zitat von Broadcastzu a.) Musst mal meine Quellcodes sehen da sieht alles so aus! meiner meinung nach übersichtlich und kein haufen von string aneinanderreihungen.
Aber mach es doch wenigstens so:
Code:print 'Start';
Einen Kommentar schreiben:
-
Ein Gast antworteteZitat von GuradiaZitat von ErriDas eigentliche Problem lag bei register globals...
Erri
Einen Kommentar schreiben:
-
@Guradia
Du darfst dat net so umständlich erklären! Es gibt auch leute im Forum die mit PHP gerade erst anfangen (ich zwar nich aber egal)!
zu a.) Musst mal meine Quellcodes sehen da sieht alles so aus! meiner meinung nach übersichtlich und kein haufen von string aneinanderreihungen.
Ich find es so übersichtlich und es funzt, man merkt vielleicht das ich zuviel mit C++ Programmiere!!
MFG Broadcast
Einen Kommentar schreiben:
-
Zitat von ErriDas eigentliche Problem lag bei register globals...
Zitat von ErriEine Frage hab ich noch: Für was sind die "\" (Backslash`s) gut, die
Broadcast in seinem Code hat?
b: besonders wegen dieser Backslahs ..
c: Diese leite eine "Escape-Sequenz" ein. Damit wird es möglich Sonderzeichen einzufügen. Da die String im " umschlossen waren, ist " innerhalb des Strings ein Sonderzeichen und muss escaped werden.
Einen Kommentar schreiben:
-
Da man beim ECHO-Befehl schon Anführungsstriche verwendet, muss man die Anführungsstriche im ECHO-Befehl "Ausklammern".
Beispiel:
Code:echo "Dein name ist "Noob" sag ich dir!";
Code:echo "Dein name ist \"Noob\" sag ich dir!";
MFG Broadcast
Einen Kommentar schreiben:
-
Ein Gast antworteteVielen Dank für eure schnelle Hilfe.
Das eigentliche Problem lag bei register globals...
Aber auch danke für die Hinweise der Schreibweisen.
Ich bin noch ziemlicher PHP-Neuling und mach mir`s halt
doch schwerer als es ist.
Eine Frage hab ich noch: Für was sind die "\" (Backslash`s) gut, die
Broadcast in seinem Code hat?
Danke und Gruß
Erri
Einen Kommentar schreiben:
-
Re: PHP-Funktion (IF) im Link
<a <?php if($_REQUEST['id']=="start"){echo "class=bold";} else{echo "class=normal";} ?> href="index.php?id=start" >Start</a>
Einen Kommentar schreiben:
-
Ein Gast antworteteZitat von BroadcastMach es dir nicht so UMSTÄNDLICH!! :wink:
Einen Kommentar schreiben:
-
Ein Gast antworteteevtl einmal register_globals=on das andere mal =off ?
Einen Kommentar schreiben:
-
Ein Gast antworteteich würde das so machen
Code:<?php if($id=="start"){ $class="bold"; } else { $class="normal"; } ?> <a class="<?php echo $class ?>" href="index.php?id=start">Start</a>
Einen Kommentar schreiben:
-
WHAT THE HELL...!!
Ich würd das so machen wenn ich du wäre:
Code:<?php if($id=="start") { echo "<a class=\"bold\" href=\"index.php?id=start\">Start</a>"; } else { echo "<a class=\"normal\" href=\"index.php?id=start\">Start</a>"; } ?>
MFG Broadcast
Einen Kommentar schreiben:
Einen Kommentar schreiben: