Autor | Zpráva | ||
---|---|---|---|
rad Profil * |
#1 · Zasláno: 10. 12. 2010, 21:08:21
Dobrý večet
Mám jednoduchý kod který se připojuje k databázi a zobrazuje html formular select pote co se vybere z první moznosti se zobrazi dalsi select a z toho se dal vybere co se má nakonec zobrazit . mám problem se select první vzber sice funguje ale kdyz se kouknu do zdrojoveho kódu tak nevidím obsah druhého selectu - ze kterého dál chci vybýrat poradí nekdo díky <?php $host="localhost"; //local $username="root"; //username $password=""; //pass $database="base"; //nom database $con = mysql_connect($host, $username, $password); //CONECTION if (!$con) //OR DIE { die('DIE: '.mysql_error()); } mysql_select_db($database,$con); //selection database =telephone=mysql_connect($host, $username, $password); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET NAMES utf8"); $sql="SELECT * FROM tdchoix;"; //SQL $voila=mysql_query($sql,$con); // SQL +connect ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>connectBD</title> </head> <body> <form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>"> <select name="name"> <?php while($id=MySQL_Fetch_Array($voila)) //SQL +connect { if ($id['id']==$_POST["name"]) {$select='selected="selected"'; } else { $select=''; } echo "<option value=\"".$id['id']."\" ".$select.">".$id['td']."</option>"; } ?> </select> <input type="submit" name="ok" value="OK"> <?php //requet2// if (isset($_POST['ok'])) { $name=$_POST['name']; $sql2="SELECT * FROM req WHERE id=$name;"; //sql2 $voila2=mysql_query($sql2,$con); echo '<select name="name2">'; while($conne2=MySQL_Fetch_Array($voila2)) //SQL2 +connect1 { echo "<option value=".$conne2['idnumero'].">".$conne2['question']."</option>"; } echo '</select> <input type="submit" value="OK" name="ok2">'; } ?> <?php //requet2// if (isset($_POST['ok2'])) { $name2=$_POST['name2']; //sql2 mysql_select_db($database2,$con); $sql="SELECT * FROM tdchoix;"; //SQL // SQL +connect $voila2=mysql_query($sql2,$con); echo '<select name="name2">'; while($conne2=MySQL_Fetch_Array($voila2)) //SQL2 +connect1 { echo "<option value="."$conne2[id]".">"."$conne2[requet]"."</option>"; } echo '</select> <input type="submit" value="OK" name="ok2">'; } ?> </form> </body> </html> |
||
Dtx Profil * |
#2 · Zasláno: 11. 12. 2010, 10:09:39
A není ten result set, pomocí kterého se vypisuje obsah druhého selectu, prázdný?
Vlož si toto echo "POCET RADKU: " . mysql_num_rows($voila2); na řádek 94 tebou poskytnutého kódu (tedy před to echo '<select name="name2">'; Na stránce by se ti pak nemělo vypsat POCET RADKU: 0 |
||
rad Profil * |
#3 · Zasláno: 11. 12. 2010, 11:15:33
v tom to neni ale děkuju, mám ještě jeden problém jak zajistit aby při druhém postu zůstal zobrazený druhý select ? protože první select se vypíše jako echo
if (isset($_POST['ok'])) if (isset($_POST['ok2'])) Jak to udelat aby zustal prvni post zobrazeny ? diky taky jsem se chtel zeptat kdyz pottebuju dat do promene udaj z databaze, nemuzu prijit na to jak. priklad : <?php if (isset($_POST['ok2'])) { $idheight=$_POST['name2']; $basechoix='SELECT based FROM tdchoix WHERE id=1;'; //choix base test $voila4 = mysql_query($basechoix, $con); $row = mysql_fetch_array($voila4); //$requet="SELECT requet FROM req WHERE idnumero = $idheight;"; //sql2 $con2 = mysql_connect($host, $username, $password); //CONECTION if (!$con2) //OR DIE { die('DIE: '.mysql_error()); } mysql_select_db("$row",$con2); //selection database =telephone=mysql_connect($host, $username, $password); // SQL +connect $sql3=$requet; $voila3=mysql_query($sql3,$con2); echo "<table border='1'>"; while($table=mysql_fetch_array($voila3, MYSQL_ASSOC)) { echo "<tr>"; foreach ($table as $element) { echo "\n<td>".$element."</td>"; } echo "</tr>"; } } echo "</table>"; ?> diky opravdu by mi nejaka rada pomohla |
||
Časová prodleva: 13 let
|
0