![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem z przypisaniem zmiennej z listy rozwijanej. Chodzi o to że w liscie rozwijanej mam wpisane wartości i chciałbym aby były one przypisane do zmiennej $tabela która była by w zapytaniu SELECT nazwą tabeli z której ma wybierać dane. Narazie mam coś takiego i nie chce mi to działać. Jestem początkującym w tym temacie i dopiero się ucze więc proszę o wyrozumiałość.
Poniżej zamieszczam kod. Kod <html>
<head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Rozliczenie Rozmów Telefonicznych</title> </head> <body> <center><tr><b><font size="5">Rozliczenie Rozmów Telefonicznych </font></b></tr></center><br> <form method="POST" wybierz=""> <tr> <td> <Select type="text" name="tabela" value="$tabela"> <option>tabela</option> <option>Rachunki</option> <option>Aktywne</option> </select> </td> <td> <input type="submit" name="wybierz" value="wybierz"> </td> </tr> </form> <?php if (!$db_lnk = @mysql_connect("******", "****", "********")){ echo('Wystąpił błąd podczas próby połączenia z serwerem MySQL...<BR>'); exit; } if(!@mysql_select_db('Telefony')){ echo('Wystąpił błąd podczas wyboru bazy danych: Telefony<BR>'); @mysql_close(); exit; } $query = "SELECT * FROM '$tabela'"; $sum = "SELECT sum(impulsy) FROM '$tabela' AS Impulsik"; if(isSet($_POST['wybierz'])){ $tabela = $_POST['tabela']; if(!$result = mysql_query($query, $db_lnk)){ echo('Wystąpił błąd: nieprawidłowe zapytanie1...$tabela<BR>'); @mysql_close(); exit; } if(!$result2 = mysql_query($sum, $db_lnk)){ echo('Wystąpił błąd: nieprawidłowe zapytanie2...<BR>'); @mysql_close(); exit; } } ?> <center><tr><b><font size="5">Rozliczenie Rozmów Telefonicznych</font></b></tr></center><br> <table border="3" align="center"> <tr> <td><center>Id</center></td> <td><center>Telefon</center></td> <td><center>Abonament</center></td> <td><center>Połaczenia</center></td> <td><center>Inne</center></td> <td><center>Korekta</center></td> <td><center>Impulsy</center></td> <td><center>DSL</center></td> <td><center>Suma</center></td> </tr> <?php while($row2 = mysql_fetch_row($result2)){ /*echo("<tr>");*/ $wynik = 500 / $row2[0]; $wynik = sprintf("%01.2f", $wynik); /*echo("<td>$row2[0]</td>");*/ /*echo("<td>$wynik</td>");*/ /*echo("</tr>");*/ } while($row = mysql_fetch_row($result)){ echo("<tr>"); echo("<td><center>$row[0]</center></td>"); echo("<td><center>$row[1]</center></td>"); echo("<td><center>$row[2]</center></td>"); echo("<td><center>$row[3]</center></td>"); echo("<td><center>$row[4]</center></td>"); echo("<td><center>$row[5]</center></td>"); echo("<td><center>$row[6]</center></td>"); echo("<td><center>$row[7]</center></td>"); $suma = ($row[2] + $row[3] + $row[4] + $row[7]) * $wynik; echo("<td><center>$suma</center></td>"); echo("</tr>"); } ?> </table><?php if(!@mysql_close()){ echo('Wystąpił błąd podczas zamykania połączenia z serwerem MySQL...<BR>'); } ?> </body> </html> |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 275 Pomógł: 32 Dołączył: 17.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
początkującego prosze o kod php w tagach
"php", nie "code" ![]() ty w miedzyczasie poprawiaj, ja probuje zrozumiec Twoj problem edit: wskazówka na przyszłość (poza tematem): poczytaj o mysql_fetch_assoc Ten post edytował varez 12.05.2010, 17:31:42 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
html:
php:
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Poprawiłem ale dalej to samo - wyskakuje bład zapytanie1 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
no to sprawdź jaki to błąd daj:
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Wywala błąd z tej lini, że nieprawidłowe zapytanie ale po dodaniu tego:
Teraz za każdym razem po wybraniu opcji z listy otrzymuje komikat tabelaWystąpił błąd: nieprawidłowe zapytanie1...$tabela lub RachunkiWystąpił błąd: nieprawidłowe zapytanie1...$tabela lub AktywneWystąpił błąd: nieprawidłowe zapytanie1...$tabela w zależności od opcji wybranej z listy. Czyli wygląda na to że zmienną dobrze przypisuje, tylko nie chce wykonać zapytania. Ten post edytował golinek 12.05.2010, 21:12:32 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
wklej po każdym zapytaniu or die(mysql_error());tak jak Ci napisałem wyżej, to się dowiesz jaki to błąd a nie jakiś nic nie mówiący własny komunikat że nie prawidłowe zapytanie
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Błąd jaki się pojawia :
Cytat RachunkiYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '''' at line 1 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
pierwszy blad:
nie: $query = "SELECT * FROM '$tabela'"; a: $query = "SELECT * FROM $tabela"; Zanim zadasz kolejne pytanie: Zastosuj się proszę do podanych tu porad: Temat: Jak poprawnie zada pytanie Nie będziemy ci co kazdy post pisac bys zrobil mysql_error() bys wlaczyl wyswietlanie wszystkich bledow. Tam masz wszystko napisane - zastosuj się do tego dokladnie.
Powód edycji: [nospor]:
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cytat 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 '' at line 1 To samo, dalej nie wybiera. |
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ostatnia szansa - później zamykam temat:
Prosilem bys sie zastosowal do porad - zrob to. Tam masz napisane jak masze debugowac skrypt. Jak tobie się to nie przyda to nam sie przyda przy pomocy Tobie. Tam jest napisane po polsku, nie po chinsku. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dodałem to co było w instrukcji na temat postu i otrzymałem takie wyniki.
Cytat Notice: Undefined variable: tabela in /var/www/Piotr/Projekt/tel.php on line 102 Notice: Undefined variable: tabela in /var/www/Piotr/Projekt/tel.php on line 103 RachunkiYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 linia 102 zawiera:
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
NIe zastosowales sie do wszystkiego. Jest jeszcze bys wyswietllal sobie wszystko, miedzy innymi
echo $query; Czy polska język trudna język? ![]() No ale do rzeczy: juz widać po komunikacie bledu, ze uzywasz zmiennej $tabela która nie istnieje. No to juz chyba wiesz gdzie szukac bledu? Twoim bledem jest to ze nie ustawiasz zmiennej $tabela tam gdzie trzeba.
Powód edycji: [nospor]:
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
We wczesniejszej odpowiedzi napisałem:
Cytat Teraz za każdym razem po wybraniu opcji z listy otrzymuje komikat tabelaWystąpił błąd: nieprawidłowe zapytanie1...$tabela lub RachunkiWystąpił błąd: nieprawidłowe zapytanie1...$tabela lub AktywneWystąpił błąd: nieprawidłowe zapytanie1...$tabela w zależności od opcji wybranej z listy. Czyli wygląda na to że zmienną dobrze przypisuje, tylko nie chce wykonać zapytania. tak zaczął mi wyświetlac błąd jak dodałem zmienną Dopiero potem zmieniłem sposób raportowania błędu tak aby wyrzucał co jest błędem a nie moje komunikaty. Z tego co widać to zmienną przypisuje prawidłowo skoro wyświetla ją po wybraniu z formularza. Problem leży raczej w zapytaniu SQL i tym że nazwa tabeli z której ma wybierać dane jest zmienną, która w zależności od wyboru z formularza ma być inna. |
|
|
![]()
Post
#15
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Masz taki kod:
$query = "SELECT * FROM $tabela"; I php ci mowi, ze uzywasz zmiennej $tabela, ktorej nie ma. A skoro ci php to mówi to znaczy ze jej nie ma. Moze ją zadeklarowales gdzies indziej i w tym miejscu, w której jej uzywasz to jej nie ma. PHP nie daje ci losowych komunikatów. Jak mowi ze czegos nie ma to znaczy ze tego nie ma. Zrob sobie echo $query a zobaczysz ze nie ma.....
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Rozwiązany Problem dzięki serdeczne za pomoc i to był mój głupi błąd
Najpierw miałem zapytanie do SQL a potem wybierałem zmienną i tak to nie mialo prawa działać. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.06.2025 - 10:52 |