• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Variablen an selbe Seite übergeben

kurtis

New member
Hallo,

ich habe mich zwar schon im Internet umgeschaut, es scheint auch so, dass die gleiche Frage schon von mehreren Leuten gestellt wurde, aber weitergebracht hat mich doch nichts. Deswegen versuche ich jetzt einmal hier mein Glück.

Mein Problem: Ich habe eine Datei index.php, auf der man sich per select entscheiden kann, was man genau ausgegeben bekommen möchte. Jetzt möchte ich nun, entsprechend der Auswahl des Benutzers, ihm natürlich dynamisch die geforderten Infos auf dieser Seite zukommen lassen.

Nun meine Frage: Ist es möglich, diese Ausgabe auf der selben Seite zu machen? Und wenn ja: wie?

Ausschnitte aus meinem bisheriger Code:


<?php
echo "Hallo";
$menue=$_GET['men'];
echo "Sie haben den Menüpunkt $menue ausgewählt";
?>

<form action="index.php" method="get">
<select name="men">
<option value="men1">Menüpunkt 1</option>
<option value="men2">Manüpunkt 2</option>
...
</select>

Was passiert: Die URL ändert sich, durch die übergebenen Variablen, aber der php Code wird anscheinend nicht durchlaufen, da nichtmal das "Hallo" des ersten Echos erscheint. Gleiches passiert auch, wenn man
<form action=#...> oder:
<form method="get">

eingibt. Wie bekomme ich es nun hin, dass der Code durchlaufen wird? Bitte helft mir mit einfachen Erklärungen, denn ich bin Anfänger.

Danke schonmal an alle, die sich damit beschäftigen
Kurtis
 
Versuch mal so

PHP:
<?
if($_POST)
{
$menue=$_POST['men'];
echo "Sie haben den Menüpunkt ".$menue." ausgewählt"; 
exit;
?>
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="POST" name="Formular">

... dein formular zeug ...


<input type="submit" value="senden">
</form>
 
Versuch mal so

PHP:
<?
if($_POST)
{
$menue=$_POST['men'];
echo "Sie haben den Menüpunkt ".$menue." ausgewählt"; 
exit;
?>
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="POST" name="Formular">

... dein formular zeug ...


<input type="submit" value="senden">
</form>

Ergebnis davon ist:


"Die von Ihnen aufgerufene Adresse, file://localhost/D:/Programme/xampp/htdocs/%3C?php%20print%20$_SERVER['PHP_SELF'];%20?%3E, ist zurzeit nicht erreichbar."
 
Also, jetzt habe ich die seite mal richtig komplettiert und als index.php gespeichert.
Und under XXAMP läuft die bei mir OHNE Probleme. Hier das komplette script:

Code:
<?php
if($_POST) 
{ 
$menue=$_POST['men']; 
echo "Sie haben den Menüpunkt  <ont color="red"><b>".$menue."</b></font>  ausgewählt"; 
echo "<br><a href='index.php'>zurück zur Auswahl</a>"; 
exit; 
}
?>
<html>
<head></head>
<body>
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="POST" name="Formular">
<select name="men">
<option value="men1">Menüpunkt 1</option>
<option value="men2">Manüpunkt 2</option>
</select>

<input type="submit" value="senden"> 
</form> 

</body>
 
Also, jetzt habe ich die seite mal richtig komplettiert und als index.php gespeichert.
Und under XXAMP läuft die bei mir OHNE Probleme. Hier das komplette script:


Ich hab deinen Code jetzt erst einmal kopiert, um zu sehen, ob es läuft. Bei mir erscheint dann auf der Seite über dem Menü:

".$menue." ausgewählt"; echo "
zurück zur Auswahl"; exit; } ?>


So sieht mein Skript nun aus - aber es trotz der Backslashs bleibt eben oben genanntes stehen und es kommt ein Fehler, dass die Seite nich vorhanden ist, und das sowohl im Opera als auch im Firefox.

Code:
<?php
if($_POST) 
{ 
$menue=$_POST['men']; 
echo "Sie haben den Menüpunkt  <font color=\"red\"><b>".$menue."</b></font>  ausgewählt"; 
echo "<br><a href='index.php'>zurück zur Auswahl</a>"; 
exit; 
}
?>
 
war meine Vermutung, dass PHP nicht geparsed wird. (Im Qulltext beim Browser sollte der PHP Code nämlich nicht mehr sein). Ganz einfache lösung... xampp neu installieren.
 
war meine Vermutung, dass PHP nicht geparsed wird. (Im Qulltext beim Browser sollte der PHP Code nämlich nicht mehr sein). Ganz einfache lösung... xampp neu installieren.

Aber andere Sachen mit PHP funktionieren doch... Nur: wo nichts ausgeführt wird, kann auch nichts geparst werden, denke ich mal? Also nicht, dass ich mir einbilde, schlauer zu sein, aber leuchte mir nicht ganz ein...
 
sicher, dass du die Datei under .php gespeichert hast und dass der Apache richtig konfiguriert wurde?
 
sicher, dass du die Datei under .php gespeichert hast und dass der Apache richtig konfiguriert wurde?

Sicher, dass ich die Datei als test.php abgespeichert habe.
Ob mein Apache richtig konfiguriert ist? Ich hoffe, aber meine Hand will ich dafür nich ins Feuer legen.
und ich habe gerade mal die alten Skripte rausgeholt... da merke ich, dass die auf einmal alle Fehler enthalten... Von daher scheint es so, dass du recht hast... Muss das Zeugs wohl neu installieren...
 
Neuinstallation hat funktioniert. Alles bestens.

Danke an euch beide. Super! Seite funktioniert auch, wie gewünscht...
 
Sorry, muss mich entschuldigen..

War leider 'ne Zeit lang weg.
In meinem Script war noch zwei Tippfehler, die bei der Ergäönzung des funktionierenden Scriptes in der Eile passiert sind.
Hier jetzt noch mal das korrigierte:

Code:
<?php
if($_POST) 
{ 
$menue=$_POST['men']; 
echo "Sie haben den Menüpunkt  <font color='red'><b>".$menue."</b></font>  ausgewählt"; 
echo "<br><a href='index.php'>zurück zur Auswahl</a>"; 
exit; 
}
?>
<html>
<head></head>
<body>
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="POST" name="Formular">
<select name="men">
<option value="men1">Menüpunkt 1</option>
<option value="men2">Manüpunkt 2</option>
</select>

<input type="submit" value="senden"> 
</form> 

</body>
 
Zurück
Oben