Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] You have an error in your SQL syntax
Forum PHP.pl > Forum > Przedszkole
bartek4175
Kod:
  1. <?php
  2. require_once("../zapytania.php");
  3. mysql_connect ("mysql3.superhost.pl","sh178151_admin","xxx"); //łącze z bazą ("serwer bazy","użytkownik","hasło")
  4. mysql_select_db ("sh178151_bartek4175"); //nazwa bazy
  5. mysql_query ("SET NAMES utf8"); //kodowanie znaków przydatne przy pobieraniu treści
  6.  
  7. function emotki($string) {
  8.  
  9. $emotikony = array(":D" => "http://firegifts.pl/images/emoticons/smilie5.gif",":)" => "http://firegifts.pl/images/emoticons/wink.gif", "lol2" => "http://emotikona.pl/emotikony/pic/01icon_lol2.gif", ":(" => "http://emotikona.pl/emotikony/pic/0sad.gif", ":P" => "http://emotikona.pl/emotikony/pic/0tongue.gif", "kurwa" => "http://firegifts.pl/images/emoticons/censored.gif", "huj" => "http://firegifts.pl/images/emoticons/censored.gif", "google" => "http://emotikona.pl/emotikony/pic/14icon_google.gif");
  10. foreach($emotikony as $tekst => $grafika) $string = str_replace($tekst,'<img src="'.$grafika.'" />',$string);
  11.  
  12. return $string;
  13. }
  14. $admin = mysql_query("SELECT * FROM users WHERE id = ".$data['id']."") or die;
  15.  
  16.  
  17. if(isset($_POST['wyslij']) && !empty($_POST['login']) && !empty($_POST['tresc']))
  18. {
  19. //Definicja zmiennych
  20. $login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
  21. $tresc = mysql_real_escape_string(htmlspecialchars($_POST['tresc']));
  22. $data = date('Y-m-d H:i:s');
  23. $ip = $_SERVER['REMOTE_ADDR'];
  24.  
  25. //Wykonujemy zapytanie importujące zdefiniowane dane
  26. mysql_query ("INSERT INTO `posty` (`login`, `tresc`, `data`, `ip`) VALUES('$login', '$tresc', '$data', '$ip')");
  27.  
  28. //No i przenosimy użytkownika z powrotem do shoutboxa
  29. header('Location: '.$_SERVER['REQUEST_URI']);
  30. }
  31. else {
  32. //Pobieramy dane z bazy
  33. $query = mysql_query ("SELECT * FROM `posty` ORDER BY `data` DESC LIMIT 10");
  34. //Początek struktury tabeli
  35. echo '<table id="shoutbox">';
  36. //Pętla do wyświetlenia wszystkich wpisów
  37. while($shout=mysql_fetch_array($query)) {
  38. echo emotki('<tr class="wpis"><td>'
  39. .'<b> ');
  40.  
  41. echo emotki(''.$shout['login'].':</b></span> ' //wyświetlamy nick
  42. .$shout['tresc'] //wyświetlamy treść
  43. .'<br/><span class="data">'
  44. .$shout['data'] //wyświetlamy datę
  45. .'</span> ');
  46.  
  47. if (($data['admin']) == 1){
  48. if (isset($_GET['akcja']))
  49. {
  50. switch ($_GET['akcja'])
  51. {
  52. case 'spamer':
  53. mysql_query("DELETE FROM `posty` WHERE id = '" . (int)$_GET['id'] . "'") or die(mysql_error());
  54. break;
  55. }
  56. }
  57. ?><a href="/chat/index.php?akcja=usun&id=<? echo''.$shout['id'].''; ?> "> <span style="color:red;"><b>X</b></a></span><?
  58. }
  59. if (($data['admin']) == 1){
  60. if (isset($_GET['akcja']))
  61. {
  62. switch ($_GET['akcja'])
  63. {
  64. case 'spamer':
  65. mysql_query("INSERT INTO `users` (`spamer`) VALUES('1') WHERE '".$shout['login']."' = '".$data['login']."'") or die(mysql_error());
  66. break;
  67. }
  68. }
  69. ?><a href="/chat/index.php?akcja=spamer&login=<? echo''.$shout['login'].''; ?> "> <span style="color:green;"><b>S</b></a></span><?
  70. }
  71. echo emotki('</tr></td>');
  72. } //
  73.  
  74.  
  75. //Koniec struktury tabeli
  76. echo '</table>';
  77.  
  78. }
  79.  
  80.  
  81. //print_r($_SERVER);
  82. ?>
  83. <form action="" method="POST" id="shoutbox">
  84. <?php require_once("../zapytania.php"); echo'<input type="hidden" name="login" value="'.$data['login'].'" />'; ?><br/>
  85. Treść: <input type="text" name="tresc" maxlength="125" />
  86. <button type="submit" name="wyslij">Napisz</button>
  87. </form>

Błąd:
  1. 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 'WHERE 'Bartek4175' = 'Bartek4175'' at line 1
nospor
A od kiedy INSERT INTO przyjmuje jakis WHERE??
bartek4175
Cytat(nospor @ 29.01.2014, 12:09:29 ) *
A od kiedy INSERT INTO przyjmuje jakis WHERE??

błąd zniknął.

Chcę aby ko kliknięciu S zmieniło wartość spamer z 0 na 1 a temu użytkownikowi na którego kliknę
nospor
INSERT sluzy do wkladania nowych rekordow
Do zmiany rekordow sluzy UPDATE.... w UPDATE mozna stosowac WHERE. Naprawde takie podstawy trzeba omawiac na forum?
bartek4175
Cytat(nospor @ 29.01.2014, 12:15:27 ) *
INSERT sluzy do wkladania nowych rekordow
Do zmiany rekordow sluzy UPDATE.... w UPDATE mozna stosowac WHERE. Naprawde takie podstawy trzeba omawiac na forum?

Doszedłem do tego:
  1. <?php
  2. require_once("../zapytania.php");
  3. mysql_connect ("mysql3.superhost.pl","sh178151_admin","xxx"); //łącze z bazą ("serwer bazy","użytkownik","hasło")
  4. mysql_select_db ("sh178151_bartek4175"); //nazwa bazy
  5. mysql_query ("SET NAMES utf8"); //kodowanie znaków przydatne przy pobieraniu treści
  6.  
  7. function emotki($string) {
  8.  
  9. $emotikony = array(":D" => "http://firegifts.pl/images/emoticons/smilie5.gif",":)" => "http://firegifts.pl/images/emoticons/wink.gif", "lol2" => "http://emotikona.pl/emotikony/pic/01icon_lol2.gif", ":(" => "http://emotikona.pl/emotikony/pic/0sad.gif", ":P" => "http://emotikona.pl/emotikony/pic/0tongue.gif", "kurwa" => "http://firegifts.pl/images/emoticons/censored.gif", "huj" => "http://firegifts.pl/images/emoticons/censored.gif", "google" => "http://emotikona.pl/emotikony/pic/14icon_google.gif");
  10. foreach($emotikony as $tekst => $grafika) $string = str_replace($tekst,'<img src="'.$grafika.'" />',$string);
  11.  
  12. return $string;
  13. }
  14. $admin = mysql_query("SELECT * FROM users WHERE id = ".$data['id']."") or die;
  15.  
  16.  
  17.  
  18. ?><?
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25. if(isset($_POST['wyslij']) && !empty($_POST['login']) && !empty($_POST['tresc']))
  26. {
  27. //Definicja zmiennych
  28. $login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
  29. $tresc = mysql_real_escape_string(htmlspecialchars($_POST['tresc']));
  30. $data = date('Y-m-d H:i:s');
  31. $ip = $_SERVER['REMOTE_ADDR'];
  32.  
  33. //Wykonujemy zapytanie importujące zdefiniowane dane
  34. mysql_query ("INSERT INTO `posty` (`login`, `tresc`, `data`, `ip`) VALUES('$login', '$tresc', '$data', '$ip')");
  35.  
  36. //No i przenosimy użytkownika z powrotem do shoutboxa
  37. header('Location: '.$_SERVER['REQUEST_URI']);
  38. }
  39. else {
  40. //Pobieramy dane z bazy
  41. $query = mysql_query ("SELECT * FROM `posty` ORDER BY `data` DESC LIMIT 10");
  42. //Początek struktury tabeli
  43. echo '<table id="shoutbox">';
  44. //Pętla do wyświetlenia wszystkich wpisów
  45. while($shout=mysql_fetch_array($query)) {
  46. echo emotki('<tr class="wpis"><td>'
  47. .'<b> ');
  48.  
  49. echo emotki(''.$shout['login'].':</b></span> ' //wyświetlamy nick
  50. .$shout['tresc'] //wyświetlamy treść
  51. .'<br/><span class="data">'
  52. .$shout['data'] //wyświetlamy datę
  53. .'</span> ');
  54.  
  55. if (($data['admin']) == 1){
  56. if (isset($_GET['akcja']))
  57. {
  58. switch ($_GET['akcja'])
  59. {
  60. case 'usun':
  61. mysql_query("DELETE FROM `posty` WHERE id = '" . (int)$_GET['id'] . "'") or die(mysql_error());
  62. break;
  63. }
  64. }
  65. ?><a href="/chat/index.php?akcja=usun&id=<? echo''.$shout['id'].''; ?> "> <span style="color:red;"><b>X</b></a></span><?
  66. }
  67. if (($data['admin']) == 1){
  68. if (isset($_GET['akcja']))
  69. {
  70. switch ($_GET['akcja'])
  71. {
  72. case 'spamer':
  73. mysql_query("UPDATE `users` SET spamer='1' WHERE '".$shout['login']."' = '".$data['login']."'") or die(mysql_error());
  74. break;
  75. }
  76. }
  77. ?><a href="/chat/index.php?akcja=spamer&login=<? echo''.$shout['login'].''; ?> "> <span style="color:green;"><b>S</b></a></span><?
  78. }
  79. echo emotki('</tr></td>');
  80. } //
  81.  
  82.  
  83. //Koniec struktury tabeli
  84. echo '</table>';
  85.  
  86. }
  87.  
  88.  
  89.  
  90. //print_r($_SERVER);
  91. if($data['spamer'] == 1){
  92. echo "<b><center>Posiadasz Status Spamera!</center></b>";
  93. } else {?>
  94. <form action="" method="POST" id="shoutbox">
  95. <?php require_once("../zapytania.php"); echo'<input type="hidden" name="login" value="'.$data['login'].'" />'; ?><br/>
  96. Treść: <input type="text" name="tresc" maxlength="125" />
  97. <button type="submit" name="wyslij">Napisz</button>
  98. </form>
  99. <?
  100. }
  101. ?>


gdy kliknę S to wszystkim daje spamer = 1 a ja chce aby dawało tylko:

tylko temu, który jest w odnośniku.
nospor
mysql_query("UPDATE `users` SET spamer='1' WHERE KOLUMNA_Z_NAZWA_USERA = '".$data['login']."'") or die(mysql_error());
bartek4175
Cytat(nospor @ 29.01.2014, 12:34:04 ) *
mysql_query("UPDATE `users` SET spamer='1' WHERE KOLUMNA_Z_NAZWA_USERA = '".$data['login']."'") or die(mysql_error());

błąd jest bo data login to mój login i cały czas mi daje spamera sad.gif

nospor
facepalmxd.gif

To zamiast $data['login'] wpisuj interesujace cie login... wszystko trzeba napisac i pod nos podsunac?
bartek4175
Cytat(nospor @ 29.01.2014, 12:57:41 ) *
facepalmxd.gif

To zamiast $data['login'] wpisuj interesujace cie login... wszystko trzeba napisac i pod nos podsunac?

błąd:
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 'Bartek4176' at line 1

gdy chce dac spamera uzytkownikowi bartek4176
zapytanie:
  1. mysql_query("UPDATE `users` SET spamer='1' WHERE login = ''".$shout['login']."") OR die(mysql_error());



facepalmxd.gif facepalmxd.gif facepalmxd.gif facepalmxd.gif
_Borys_
Skoro klikasz to pobieraj dane z $_GET
coś w stylu, i bez validacji
  1. mysql_query("UPDATE `users` SET spamer='1' WHERE `KOLUMNA_Z_NAZWA_USERA` = '".$_GET['login']."'") or die(mysql_error());

Poza tym usuwanie i to updejtowanie przerzuć poza pętlę while() bo po 10 razy będzie ci się wykonywać.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.