Autor Zpráva
kokolino
Profil
čaute
snažím sa spraviť funkciu, ktorá bude v selekte meniť tabuľku podľa parametra v url
<?php
$hodnota=$_GET['id'];
include ("db.php");
echo"<table border='1'>";
 function ZmenTabulku($hodnota)
 {
   $pacient=mysql_query ($a="SELECT id,nazov from $hodnota")or print ("chyba <br />" .$a."<br />".mysql_error()); 
    while($row=mysql_fetch_array($pacient)){    
        echo "<tr>";
        echo "<td>".$row['id']. "</td>";
        echo "<td>".$row['nazov']. "</td>";
        echo "</tr>";
    }     
echo"</table>";
}
switch ($hodnota){
case 1 : ZmenTabulku("listovanie"); break;
case 2 : ZmenTabulku("okna"); break;
case 3 : ZmenTabulku("lampy"); break;
}


 ZmenTabulku($hodnota);
 ?>

tabuľka sa v selekte zmení nastane aj výpis z danej tabuľky, ale zároveň nastane aj výpis chybovej hlášky
chyba
SELECT id,nazov from 2
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2' at line 1
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\laci\uvod.php on line 8

moja otázka znie prečo dochádza k vzniku chybovej hlášky ak výpis prebehne v poriadku ?
Bertram
Profil
Ahoj, voláš funkci ZmenTabulku 2x

1) ze swith, kde jí předáváš string 'okna', jak je žádáno.
2) na řádku 23, kde jí předáváš string '2' a taková tabulka neexistuje.

Také bych poupravil řádek 2 na:
$hodnota=intval($_GET['id']);

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: