PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu rawurldecode


hoschy
21.10.2005, 14:02:56
Hi,

ich hab mal ne Frage zu rawurldecode.

Ich möchte ganz gerne den Inhalt einer Variablen an eine nächste seite übergeben, doch leider lässt das mein Aufbau der Seite wohl irgendwie nicht zu:

<?php
if (empty($_GET['site'])) {
$inc='start';
}
else {
$inc=$_GET['site'];
}
switch($_GET['site'])
{
case 'agb' : $inc='agb.php'; break;
case 'angebote' : $inc='angebote.php'; break;
case 'bestellen' : $inc='bestellen.php'; break;
case 'impr' : $inc='impr.php'; break;
case 'sc_status' : $inc='server_status.php'; break;
case 'sc_stop' : $inc='server_stop.php'; break;
default : $inc='index.inc.php'; break;
}
include($inc);
?>

Wenn ich jetzt den Inhalt der Variablen $var an die Seite bestellung.php weiterleiten will, komme ich immer wieder auf die Hauptseite.

ich habs mal so versucht:

<?php
$test = mysql_query("SELECT id, groesse FROM preise ORDER BY id") or die(mysql_error());
while($row = mysql_fetch_array($test)){
$var = rawurldecode($row['id']);

echo "<td><a href=?site=bestellen=$var>$row[groesse]</a></td>";
}

?>

Nur leider funzt das so nicht. Kann mir da jemand weiterhelfen?

Danke schon mal

Greez

Christian

R. Woitaschik
21.10.2005, 14:11:31
Hi Christian,

Du solltest beim Zusammenbau der URL noch einen Parameternamen für die ID vergeben.
echo "<td><a href=?site=bestellen=&id=$var>$row[groesse]</a></td>";.
Dann kannst Du die ID über die Variable $_GET['id'] abrufen.

Gruß
Richard

hoschy
21.10.2005, 14:23:22
Schön danke.

Funktioniert. Allerdings musste noch das = zwischen bestellung und &id weg.


Aber trotzdem Danke

sysop
21.10.2005, 17:34:55
der ornung halber:

man kann das ganze auch verdeckt (also nicht über den link) machen, indem man
<input type="hidden" name="id" value="<?=$var?>"> verwendet.

feuervogel
21.10.2005, 21:44:26
echo "<td><a href=?site=bestellen=&id=$var>$row[groesse]</a></td>";

sollte generell nicht funktionieren, besser so:

echo "<td><a href=?site=bestellen=&id=" . $var->$row[ 'groesse' ] . "</a></td>";

meikel (†)
22.10.2005, 02:07:46
Falsches HTML bleibt auch dann falsches HTML, wenn man es mit PHP ausgibt.