germandream
Goto Top

HTML Button übergibt Wert nicht

Hallo,

Ich habe ein Problem und zwar hab ich eine Suche in einer SQL Datenbank mit html und php erstellt, diese kann auch sortiert werden.

Nun hab ich folgendes problem wenn ich meine suche ausgeführt habe und dort sortieren will übergibt er den wert sortieren wohl nicht


<form action="suche.php" method="POST">
<input type="hidden" value="gesamtgewicht" name="sortieren">
<input type="hidden" value="184445" name='suche'>
<input type="submit" name="sort" value="auf">
</form>

mit php hole ich mir die Werte so

$suche = $HTTP_POST_VARS['suche'];
$sortieren = $HTTP_POST_VARS['sortieren'];

und übergebe die werte in die sql abfrage

$result = mysql_query ("SELECT buchnr FROM bestand WHERE buchnr =$suche Order by $sortieren" );

nur interessiert ihn wohl die variable $sortieren nicht, wenn ich die tabelle aber sortieren will wenn ich nach nichts gesucht habe und mir die komplett anzeigen lasse funktioniert dieses problemlos.

Hoffe ich habe mich verständlich ausgedrückt.

Content-Key: 90761

Url: https://administrator.de/contentid/90761

Printed on: April 25, 2024 at 11:04 o'clock

Member: bytecounter
bytecounter Jun 27, 2008 at 08:09:38 (UTC)
Goto Top
Hallo,

Vermutlich ist das Feld, nachdem Du sortieren möchtest, falsch angelegt. Welchen Variablentyp beinhaltet das Feld "gesamtgewicht"?

vg
Bytecounter
Member: herpes
herpes Jun 27, 2008 at 08:45:32 (UTC)
Goto Top
huhu
zw lass dir einfach mal alle variablen anzeigen die uebergeben werden

function getRequest(){
   //das pre tag zu r formatierten anzeige
   echo "<pre>";  
   print_r($_REQUEST);
   echo "</pre>";  
}

getRequest();

dann siehst du was uebergeben wird
und was nicht bzw wie..

statt print_r kannste auch var_dump nehmen...
Member: GermanDream
GermanDream Jun 27, 2008 at 08:51:48 (UTC)
Goto Top
Int natürlich .... und wie gesagt wenn ich die Tabelle ohne suche sortiert habe funktioniert es ja auch.
Member: GermanDream
GermanDream Jun 27, 2008 at 08:53:18 (UTC)
Goto Top
ich lass mir oben die variablen einfach mit einem echo ausgeben dort zeigt er sie mir auch an nur fügt er diese nicht bei $sortieren ein


echo $sortieren;
echo $suche;
$result = mysql_query ("SELECT buchnr FROM bestand WHERE buchnr =$suche Order by $sortieren" );
Member: herpes
herpes Jun 27, 2008 at 09:31:17 (UTC)
Goto Top
1) das kann nicht sein
wenn in
echo $_REQUEST["sortieren"]  
ein wert ausgegeben wird
dann wird dieser auch in
$sql ="SELECT * FROM tabelle WHERE buchnr = ".$_REQUEST["sortieren"];  
zurueck gegeben.
wenn dem nicht so ist dann postest du hier nicht alle wesentlichen codefragmente,
bzw alle wichtigen details!

2) geht es bei meiner funktion darum zu kucken was er dir alles an variablen uebergibt
ob die vielleicht ueberschrieben werden etc
Member: wakko
wakko Jun 27, 2008 at 09:31:25 (UTC)
Goto Top
Moin,
versuch mal:
$sqlstring = "SELECT buchnr FROM bestand WHERE buchnr =$suche Order by $sortieren"SELECT buchnr FROM bestand WHERE buchnr=".$suche." ORDER BY ".$sortieren;  
echo $sqlstring;
$result = mysql_query($sqlstring);

Gruß,
Henrik
Member: herpes
herpes Jun 27, 2008 at 09:36:03 (UTC)
Goto Top
das
ist nur bei einem hochkomma noetig

also
$name = "Miezi";  
echo"Mein Hund heisst  $name ";  
//ausgabe Mein Hund heisst  Miezi

echo ' Mein Hund heisst  $name ';  
//ausgabe Mein Hund heisst  $name 

//bei hochkomma also konktonieren (oder wie das heisst)

echo ' Mein Hund heisst '.$name ;  
//ausgabe Mein Hund heisst  Mietzi 


das problem muss also was anderes sein
Member: GermanDream
GermanDream Jun 27, 2008 at 09:39:55 (UTC)
Goto Top
Ich habs rausgefunden ich war einfach nur zu blöd sry -.-

mir hat einfach nen If gefehlt denn wenn in sortieren nichts drin steht bevor ich suche macht er nichts, da hab ich einfach mal

if ($sortieren==''){
$sortieren="buchnr" ;
}

eingebaut und schon gehts face-smile

Danke für eure mühe und hilfe
Member: wakko
wakko Jun 27, 2008 at 10:07:36 (UTC)
Goto Top
Das mit dem konkatenieren hat imho Performance-Gründe...
Member: masterG
masterG Jul 01, 2008 at 07:57:25 (UTC)
Goto Top
Thread gelöst und geschlossen