Variablenübergabe nach mysql abfrage klappt nicht :-(

romu

Mitglied
Hallo mal wieder.
Folgende Situation:

Ich mache eine Mysql abfrage
testheader.php :
<form action="abfrage2.php?id=<? echo $id; ?>&durchmesser=<? echo $durchmesser; ?>
<select name="durchmesser" Size=1 onchange="document.Review.submit();">

<?
include"connect.php";
$string = mysql_query("select DISTINCT durchmesser from artikelstamm where artikelnummer like 'D.$id.%'");

while($result = mysql_fetch_array($string)):?>
<option value="<? echo $result["durchmesser"] ?>" selected><? echo $result["durchmesser"] ?></option>
<? endwhile ?>
</select>

Er zeigt mir dann auch alle werte wunderbar im pulldownmenü an !

Danach möchte ich in einer neuen datei wiederum eine mysql abfrage mit diesen werten machen
Nur liegt hier der Fehler. Die bereits abgefragte $id, zeigt er mir als wert in der URL an.
Den durchmesser nicht :-((

An was liegt das?

Weil die mysql abfrage erst unterhalb der action kommt? kann das sein?

Über hilfe wäre ich sehr dankbar.

romu
 
Du musst schon dem Formular überlassen die Werte zu übergeben.
PHP:
<form action="abfrage2.php?id=<? echo $id; ?>&durchmesser=<? echo $durchmesser; ?>

Ein Form Kopf sollte so aussehen:
PHP:
<form action="Zieldokument" method="GET">

So wird der entsprechende Query automatisch erstellt, wenn deine Felder richtig benannt sind. Das GET kannst du auch durch POST ersetzen dann gibts nicht so eine häßliche URL und es kann kein Schabernack getrieben werden mit deinen Varialen :) .
 
hmmmmmt

<form action="abfrage2.php?id=<? echo $id; ?>&durchmesser=<? echo $durchmesser; ?>" method="post" name="form1" target="_self">
<p align="center" name="select2">

So hatte ich das ganze ja schon :-( (Habe nur beim kopieren vergessen :-)).

Wenn ich das so übergebe, wird mir die $id richtig angezeigt, der rest fehlt. Die $id hatte ich aber von einer vorherigen seite schon mitgenommen.

Wenn ich GET nehme, wird mir die $ id gar nicht mehr angezeigt, aber die andere Variable Durchmesser

Browser bei POST: http://localhost/abfrage2.php?id=801&durchmesser=
 
:-(

klappt leider auch nicht :-(((

aber es ist doch komisch das er mir die werte bei get anzeigt und bei post nicht, oder?
ich würde es ja mit get machen aber dann übergibt er mir die $id variable nicht
 
Zuletzt bearbeitet:
Wenn der Durchmesser erst durch die SQL-Abfrage ermittelt wird, musst Du natürlich den Form-Tag mit dem Durchmesser als Parameter auch erst danach erstellen.
 
wieso geht das dann mit get

wieso geht das ganze dann mit get ?

Und wie kann ich den formtag verschieben?
Habe das schon versucht !
Aber dann funktioniert der submit button nicht mehr .............

*heul*
 
@snuu: hast schon recht, aber es is ein wenig umständlicher POST variablen zu beeinflussen als GET Variablen ..

@ romu: dann stimmt was nich mit deinen HTML Tags ... schau doch einfach mal in den entstehenden HTML code
 
Zurück