Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mySQL][PHP]Nie dodaje do bazy danych. Tablica?
kamil-s
post 21.06.2011, 08:01:19
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 6.08.2009

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


Witam,
Stworzyłem taki prosty skrypt dodawania do bazy mySQL, ale nie dodaje.
Plik jest includowany z drugiego pliku, więc połączenie z bazą danych jest.
Przypuszczam że jakoś źle zrobiłem z tymi tablicami i stringami.
Proszę o pomoc.

  1. <?
  2.  
  3. $x=1;
  4. while($x <= 3){
  5.  
  6.  
  7.  
  8. $z=$y;
  9. $u=1;
  10.  
  11. while($u == 25){
  12. $losa = rand(1,25);
  13.  
  14. if($losa == 1){$los[$u]=6;}
  15. if($losa == 2){$los[$u]=9;}
  16. if($losa == 3){$los[$u]=9;}
  17. if($losa == 4){$los[$u]=8;}
  18. if($losa == 5){$los[$u]=7;}
  19. if($losa == 6){$los[$u]=7;}
  20. if($losa == 7){$los[$u]=5;}
  21. if($losa == 8){$los[$u]=5;}
  22. if($losa == 9){$los[$u]=5;}
  23. if($losa == 10){$los[$u]=5;}
  24. if($losa == 11){$los[$u]=5;}
  25. if($losa == 12){$los[$u]=5;}
  26. if($losa == 13){$los[$u]=5;}
  27. if($losa == 14){$los[$u]=5;}
  28. if($losa == 15){$los[$u]=5;}
  29. if($losa == 16){$los[$u]=5;}
  30. if($losa == 17){$los[$u]=0;}
  31. if($losa == 18){$los[$u]=0;}
  32. if($losa == 19){$los[$u]=0;}
  33. if($losa == 20){$los[$u]=0;}
  34. if($losa == 21){$los[$u]=0;}
  35. if($losa == 22){$los[$u]=0;}
  36. if($losa == 23){$los[$u]=0;}
  37. if($losa == 24){$los[$u]=0;}
  38. if($losa == 25){$los[$u]=0;}
  39.  
  40. $u++;
  41. }
  42.  
  43.  
  44. echo "<br>2: ";
  45. $zapytanie = "INSERT INTO `mapa` (`z`, `1`, `2`, `3`, `4` , `5`, `6`, `7`, `8`, `9` , `10`, `11`, `12`, `13`, `14` , `15`, `16`, `17`, `18`, `19` , `20`, `21`, `22`, `23`, `24` , `25`) VALUES (`$z`, `$los[1]`, `$los[2]`, `$los[3]`, `$los[4]`, `$los[5]`, `$los[6]`, `$los[7]`, `$los[8]`, `$los[9]`, `$los[10]`, `$los[11]`, `$los[12]`, `$los[13]`, `$los[14]`, `$los[15]`, `$los[16]`, `$los[17]`, `$los[18]`, $los[19]`, `$los[20]`, `$los[21]`, `$los[22]`, $los[23]`, `$los[24]`, `$los[25]`)";
  46. $idzapytania = mysql_query($zapytanie);
  47.  
  48.  
  49.  
  50. $x++;
  51. }
  52.  
  53. ?>


Go to the top of the page
+Quote Post
nospor
post 21.06.2011, 08:06:15
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




while($u == 25)
Powiedz mi proszę, co wg. Ciebie robi ten warunek?

ps: przenoszę.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mortus
post 21.06.2011, 08:11:45
Post #3





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Poza tym w zapytaniu gravisy stosujemy przy nazwach kolumn (przed słowem VALUES), a apostrofy lub cudzysłowy przy wartościach dla tych kolumn (po słowie VALUES).
Zamiast stosować tyle porównań można zrobić tak:
  1. if($losa >= 17 && $losa <= 25) $los[$u] = 0;
  2. // resztę sobie sam przekształć
Go to the top of the page
+Quote Post
kamil-s
post 21.06.2011, 08:20:39
Post #4





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 6.08.2009

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


Czyli muszę zmienić warunek na
  1. >=

i zmienić w poleceniu mySQL na

  1. VALUES ('$z', '$los[1]', ...

?
Go to the top of the page
+Quote Post
nospor
post 21.06.2011, 08:23:16
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Myśl.... nie strzelaj!

while($u >= 25)
Dopóki $u jest większe od 25? Przecież na dzień dobry $u=1, wiec niby jakim cudem $u>=25 będzie prawdziwe?
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

Go to the top of the page
+Quote Post
kamil-s
post 21.06.2011, 08:29:23
Post #6





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 6.08.2009

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


Dzięki, pętla już działa.
A z tymi stringami to jak?

VALUES ($z, $los[1], $los[2] ...
?
VALUES ('$z', '$los[1]', '$los[2]'
?
Go to the top of the page
+Quote Post
nospor
post 21.06.2011, 08:34:17
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Tekst bierze się w apostrofy
Liczby nie - zakładam, że na liczby założyłeś pola liczbowe.

ps:
Temat: Jak poprawnie zada pytanie
Zapoznaj się z tym tematem i zastosuj - przyda ci się.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kamil-s
post 21.06.2011, 08:54:20
Post #8





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 6.08.2009

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


Poprawiłem wszystko i nadal nie działa.
Na ten moment kod wygląda tak.
  1. <?
  2. $u=1;
  3.  
  4. while($u <= 25){
  5.  
  6. $losa = rand(1,25);
  7.  
  8. if($losa == 1){$los[$u]=6;}
  9. if($losa == 2){$los[$u]=8;}
  10. if($losa >= 3 && $losa <= 4) {$los[$u] = 9;}
  11. if($losa >= 5 && $losa <= 8) {$los[$u] = 7;}
  12. if($losa >= 7 && $losa <= 16) {$los[$u] = 5;}
  13. if($losa >= 17 && $losa <= 25) {$los[$u] = 0;}
  14.  
  15. $u++;
  16. }
  17.  
  18.  
  19.  
  20. $zapytanie = "INSERT INTO `mapa` (`z`, `1`, `2`, `3`, `4` , `5`, `6`, `7`, `8`, `9` , `10`, `11`, `12`, `13`, `14` , `15`, `16`, `17`, `18`, `19` , `20`, `21`, `22`, `23`, `24` , `25`) VALUES ($z, $los[1], $los[2], $los[3], $los[4], $los[5], $los[6], $los[7], $los[8], $los[9], $los[10], $los[11], $los[12], $los[13], $los[14], $los[15], $los[16], $los[17], $los[18], $los[19], $los[20], $los[21], $los[22], $los[23], $los[24], $los[25])";
  21. $idzapytania = mysql_query($zapytanie);
  22.  
  23. ?>

Go to the top of the page
+Quote Post
nospor
post 21.06.2011, 08:56:17
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Podałem ci linka do pewnego tematu. Zajrzyj tam, zastosuj, wróć z listą błędów.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kamil-s
post 21.06.2011, 09:01:49
Post #10





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 6.08.2009

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


Wszystko już działa, mój błąd. Wielkie dzięki. Z linkiem się zapoznałem.
Wklejam kod jakby ktoś inny go do czegoś potrzebował.
  1. <?
  2. //wczesniej jest polaczenie z baza danych.
  3.  
  4. $u=1;
  5. while($u <= 25){
  6. $losa = rand(1,25);
  7. if($losa == 1) $los[$u]=6;
  8. if($losa == 2) $los[$u]=8;
  9. if($losa >= 3 && $losa <= 4) $los[$u] = 9;
  10. if($losa >= 5 && $losa <= 8) $los[$u] = 7;
  11. if($losa >= 7 && $losa <= 16) $los[$u] = 5;
  12. if($losa >= 17 && $losa <= 25) $los[$u] = 0;
  13. $u++;
  14. }
  15.  
  16. $z=1;
  17. $zapytanie = "INSERT INTO `mapa` (`z`, `1`, `2`, `3`, `4` , `5`, `6`, `7`, `8`, `9` , `10`, `11`, `12`, `13`, `14` , `15`, `16`, `17`, `18`, `19` , `20`, `21`, `22`, `23`, `24` , `25`) VALUES ($z, $los[1], $los[2], $los[3], $los[4], $los[5], $los[6], $los[7], $los[8], $los[9], $los[10], $los[11], $los[12], $los[13], $los[14], $los[15], $los[16], $los[17], $los[18], $los[19], $los[20], $los[21], $los[22], $los[23], $los[24], $los[25])";
  18. $idzapytania = mysql_query($zapytanie);
  19. ?>
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 - 10:51