ds80 wrote:Ich habe echt keinen Bock mehr es x-mal zu erklären
Ich habe auch auf so vieles keinen Bock, zum Beispiel solche Antworten zu bekommen, obwohl man nur helfen möchte.
Du hast es bisher nicht x-mal erklärt, sondern nicht ein einziges mal vernünftig. Ich habe keinen blassen Schimmer, wofür diese drei Werte überhaupt da sein sollen, was deren Zweck ist und wieso sie in einen String gepackt werden statt zum Beispiel in einem Array. Mag alles seinen Grund haben, doch ohne diese zu kennen ist es fast unmöglich dich auf den richtigen Weg zu bringen, denn davon gibt es mehrere.
Dir einen optimierten Weg aufzuzeigen war auch nur eine Nettigkeit von mir. In fast allen anderen PHP Foren hätte man dir deine Erklärung komplett um die Ohren gehauen, dich auf irgendwelche Tutorials zu PHP Grundlagen verwiesen oder zumindest auf einen Hinweis, wie denn eine qualifizierte Fehlerbeschreibung auszusehen hat. Und selbst dann hättest du höchstens Hilfe zur Selbsthilfe erhalten und dir deinen Weg selbst erarbeiten müssen. Also den Ball schön flach halten, mein Freundchen.
ds80 wrote:Also nochmal die Frage, gibt es für den oberen Quellcode eine einfache Lösung dafür?
Ja! Einen Hinweis hast du bereits in meinem letzten Beitrag erhalten (und etwas Mitdenken wird man von jemandem erwarten können, der eine 3000 Zeilen lange php Datei schreiben kann):
Altrea wrote:Zum Zeitpunkt der Zuweisung von $name zu $info existiert $name nochnicht.
Soll ich es dir aufmalen, damit du es besser verstehst
Bitteschön, mal etwas bildlicher anhand deines Quelltextes:
- Code: Select all
<a href="index.php?id=test&le=test1">Test (1)</a><br />
<a href="index.php?id=test&le=test2">Test (2)</a><br />
<br /><br />
<?php
$hwn = $_GET["le"];
//HIER IST DIE ZUWEISUNG
{$info="
2: $hwn<br />
3: $name
";}
//AB HIER HABEN ÄNDERUNGEN AN $hwn oder $name KEINE AUSWIRKUNG MEHR AUF DIE BEREITS ZUGEWIESENEN WERTE AN $info
if ($_GET["le"]=="test1") {
$name="Testseite 1";
echo "1: $name<br />$info";}
else {echo "";}
if ($_GET["le"]=="test2") {
$name="Testseite 2";
echo "1: $name<br />$info";}
else {echo "";}
?>
EIne Lösung wäre zum Beispiel diese
- Code: Select all
<a href="index.php?id=test&le=test1">Test (1)</a><br />
<a href="index.php?id=test&le=test2">Test (2)</a><br />
<br /><br />
<?php
$le = isset($_GET['le']) ? $_GET['le'] : '';
$info = '';
switch( $le ) {
case 'test1':
$name = 'Testseite 1';
$info .= '1: ' .$name. '<br />';
break;
case 'test2':
$name = 'Testseite 2';
$info .= '1: ' .$name. '<br />';
// case 'test3', 'test4', ...
default :
// irgendein Verhalten, falls $_GET['le'] nicht übergeben wurde
break;
}
$info .= '2: ' .$le. '<br />';
$info .= '3: ' .$name. '<br />';
echo $info;
?>
Aber wer weiß das schon, mit den unzureichenden Informationen, die du bisher von dir gegeben hat.