Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL][MySQL][PHP]Błąd w zapytaniu., zapytanie, php
prostowniczek
post 3.06.2013, 15:14:04
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 23.03.2011

Ostrzeżenie: (0%)
-----


Wywala mi błąd:
Parse error: syntax error, unexpected T_VARIABLE in /home/prostown/public_html/poczta.php on line 62

Treść zapytania:

  1. $link=mysql_query('SELECT * FROM poczta adresat='$adresat' ORDER BY data DESC LIMIT '.$pocz.','.$kon.'') or die('Zle zapytanie.');

Go to the top of the page
+Quote Post
phpion
post 3.06.2013, 15:17:16
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Przy $adresat brakuje Ci kropek (jak przy $pocz i $kon) oraz brakuje WHERE między poczta a adresat.
Go to the top of the page
+Quote Post
prostowniczek
post 3.06.2013, 15:44:32
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 23.03.2011

Ostrzeżenie: (0%)
-----


Mam takie teraz oto zapytanie, lecz wywala mi, że Zle zapytanie. Nie wiem co jest nie tak. To zapytanie ma na celu paginacje wyników skrzynki odbiorczej, gdzie ma mi wyświetlać wszystkie moje wiadomości.

  1. $link=mysql_query("SELECT * FROM poczta WHERE adresat='.$adresat.' ORDER BY data DESC LIMIT '.$pocz.','.$kon.'") or die('Zle zapytanie.');


Oryginalny kod:

  1. if(isset($_GET['task']) && $_GET['task']=='odbiorcza') {
  2.  
  3. <table cellspacing="0" width="100%">
  4.  
  5. <!-- Table Header -->
  6. <thead>
  7. <tr>
  8. <th>Tytuł wiadomości</th>
  9. <th>Autor</th>
  10. <th>Data</th>
  11. <th>Usuń</th>
  12. </tr>
  13. </thead>';
  14. $adresat = $_SESSION['login'];
  15.  
  16. $page = $_GET['page'];
  17.  
  18. if($page<0)
  19. $page = 0;
  20. else
  21. if( empty($page) || !is_numeric($page) )
  22. $page = 0;
  23. $query = "SELECT count(ID) FROM poczta WHERE adresat='$adresat' ORDER by data DESC";
  24. $result = mysql_query($query);
  25. $row = mysql_fetch_assoc($result);
  26.  
  27. $ile_jest_newsow = $row['count(ID)']-10;
  28. $na_strone = 10;
  29. $ile_stron = ceil($ile_jest_newsow / $na_strone);
  30. $pocz = $page*$na_strone;
  31. $kon = $na_strone;
  32.  
  33. $link=mysql_query("SELECT * FROM poczta WHERE adresat='.$adresat.' ORDER BY data DESC LIMIT '.$pocz.','.$kon.'") or die('Zle zapytanie.');
  34. while($wiersz=mysql_fetch_array($link))
  35. {
  36. echo '<tbody>
  37.  
  38. <tr>';
  39.  
  40. if($wiersz['przeczytana'] == 0) {
  41. echo '<td><a href="poczta-czytaj.php?task=czytaj&id='.$wiersz['id'].'">'.$wiersz['temat'].' </a><font color="red">(nowa)</font></td>';
  42. } else {
  43. echo '<td><a href="poczta-czytaj.php?task=czytaj&id='.$wiersz['id'].'">'.$wiersz['temat'].'</a></td>';
  44. }
  45.  
  46. echo ' <td class="center">'.$wiersz['nadawca'].'</td>
  47. <td class="center">'.$wiersz['data'].'</td>
  48. <td class="center"><a href="poczta.php?task=usun&id='.$wiersz['id'].'">Usuń wiadomość</a></td>
  49. </tr><!-- Table Row -->
  50.  
  51. </tbody>';
  52. }
  53. echo '</table>';
  54. echo "<br>";
  55. $b =1;
  56.  
  57. for ($a=1; $a<$ile_stron+2; $a++)
  58. {
  59. if ($a==$page+1){
  60. echo '<div class="page active">'.$b.'</div> ';
  61. }
  62. if ($a != $page+1){
  63. echo '<a href="?task=odbiorcza&page='.($b-1).'" class="page gradient">'.$b.'</a> ';
  64. }
  65. $b++;
  66. }
  67.  
  68. }
Go to the top of the page
+Quote Post
Elber
post 3.06.2013, 15:47:40
Post #4





Grupa: Zarejestrowani
Postów: 381
Pomógł: 12
Dołączył: 9.07.2007

Ostrzeżenie: (0%)
-----


  1. $link=mysql_query("SELECT * FROM poczta WHERE adresat="'.$adresat.'" ORDER BY data DESC LIMIT "'.$pocz.'", "'.$kon.'") or die(mysql_error());


--------------------
GG: 564555
Go to the top of the page
+Quote Post
prostowniczek
post 3.06.2013, 16:15:45
Post #5





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 23.03.2011

Ostrzeżenie: (0%)
-----


Niestety czyta tylko tkaie zapytanie:

  1. $link=mysql_query("SELECT * FROM poczta WHERE adresat='.$adresat.' ORDER BY data DESC LIMIT '.$pocz.', '.$kon.'") or die(mysql_error());


A błąd wywala:

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 ''.0.', '.10.'' at line 1
Go to the top of the page
+Quote Post
Rysh
post 3.06.2013, 16:30:50
Post #6





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

Ostrzeżenie: (0%)
-----


  1. $link=mysql_query("SELECT * FROM poczta WHERE adresat=". $adresat ." ORDER BY data DESC LIMIT ". $pocz .", ". $kon ."") or die(mysql_error());


--------------------
Go to the top of the page
+Quote Post
hondek
post 3.06.2013, 17:00:23
Post #7





Grupa: Zarejestrowani
Postów: 355
Pomógł: 50
Dołączył: 20.08.2007
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


chyba i jedno i drugie powyżej będzie błędne, jeżeli pole 'adresat' to pole tekstowe to jego wartość musisz je dac w ''

  1. $link=mysql_query("SELECT * FROM poczta WHERE adresat='".$adresat."' ORDER BY data DESC LIMIT '.$pocz.', '.$kon.'") or die(mysql_error());


Ten post edytował hondek 3.06.2013, 17:00:52


--------------------
przetwornik yt na czasie :)
Go to the top of the page
+Quote Post
prostowniczek
post 3.06.2013, 18:01:38
Post #8





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 23.03.2011

Ostrzeżenie: (0%)
-----


Ok. Teraz wywala: Unknown column 'prostowniczek1234' in 'where clause'

Nie wiem czemu ale w bazie mam wiadomość gdzie adresatem jetsem ja czyli prostowniczek1234.

Może coś nie tak w tym zapytaniu?

Linia 24:
  1. $query = "SELECT count(ID) FROM poczta WHERE adresat='$adresat' ORDER by data DESC";


Ten post edytował prostowniczek 3.06.2013, 18:02:14
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:09