Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z wykonaniem zapytania
zuku
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 17.04.2002
Skąd: Jastrzębie Zdrój

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


Witam.

Mój problem dotyczy komunikacji php z bazą danych MySQL.

php 4.3.7
MySQL 4.0.18

Proste pytanie.
Czy to co jest pod spodem, zapisane jest poprawnie?

  1. <?php
  2.  
  3. for ($a=1;$a<=40;$a++) {
  4.  
  5. if ($_POST['szostka_'.$a]!='') {
  6. $WYK[1]=mysql_db_query($cfg['baza'],&#092;"UPDATE `sklady` SET `szostka` = '1' WHERE `sid` = '\".$_POST['szostka_'.$a].\"' LIMIT 1;\");
  7. $W[1]=MySQL_fetch_array($WYK[1]);
  8. echo 'OK<br>';
  9. }
  10. }
  11.  
  12. ?>


Otóż problem jest taki że nie zapisuje to co mu każe. I nawet jak dodam to echo 'OK' zeby sprawdzić czy skrypt się tutaj dostaje, to się dostaje ale nie wykonuje sql (a może wykonuje ale nie ma efektu). smile.gif

Pozdrawiam


--------------------
GG: 1331870 | Morecambe Bay
Go to the top of the page
+Quote Post
czachor
post
Post #2





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

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


Zobacz, co zwraca Ci mysql_errno" title="Zobacz w manualu PHP" target="_manual i mysql_error" title="Zobacz w manualu PHP" target="_manual.

Ten post edytował czachor 12.11.2004, 15:35:26


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post
zuku
post
Post #3





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 17.04.2002
Skąd: Jastrzębie Zdrój

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


mysql_errno zwaraca mi 0 natomiast mysql_error nie zwraca nic smile.gif


--------------------
GG: 1331870 | Morecambe Bay
Go to the top of the page
+Quote Post
yavaho
post
Post #4





Grupa: Zarejestrowani
Postów: 449
Pomógł: 0
Dołączył: 26.05.2004
Skąd: Nowy Sącz

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


Za malo podales argumentow w mysql_db_query" title="Zobacz w manualu PHP" target="_manual
mysql_db_query ( string baza, string zapytanie [, resource identyfikator_połączenia])

Ja robie tak:
  1. <?php
  2. $link= //tu jest polaczenie z baza danych
  3. $query = &#092;"UPDATE sklady SET szostka='1' WHERE sid=\".$_POST['szostka_'.$a];
  4. $result = @mysql_query($query, $link);
  5. if(!$result)
  6. print ('Blad zapisu do bazy danych');
  7. else
  8. print ('OK');
  9. ?>


--------------------
Książki informatyczneKsiążki biznesowe
Warsztat: notepad hardcore
Go to the top of the page
+Quote Post
zuku
post
Post #5





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 17.04.2002
Skąd: Jastrzębie Zdrój

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


Niestety dalej dzieje się to samo. errno = 0 i erroru też nie wywala.

Jaka może być przyczyna tego "zjawiska"?


--------------------
GG: 1331870 | Morecambe Bay
Go to the top of the page
+Quote Post
kszychu
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Linia 8: nazwy funkcji piszemy małymi literami, może to to?


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
-Guest-
post
Post #7





Goście







Wielkość liter nieststy też nie bo to już dawno próbowałem.

Dla ciekawości przsyłam skrypt który nie działa do końca. Otóż wszytsko działa poza case 'relacja'

Oto skrypt:
  1. <?php
  2.  
  3. require_once('../../CONFIGphp');
  4. $LINK=MySQL_Connect($cfg['host'],$cfg['login'],$cfg['pass']) or print('<font color=red>Nie można poł&plusmn;czyć się z baz&plusmn;!</font><br>Powód: '.MySQL_Error());
  5.  
  6. echo '<div style=\"padding-bottom:10px\" align=center>'
  7. .'<table cellspacing=0 cellpadding=0 border=0 class=a12 width=100%>'
  8. .'<tr><td height=5></td></tr>'
  9. .'<tr><td align=center>';
  10.  
  11. switch ($_GET['H']) {
  12.  
  13. case 'wczesniejsze':
  14. /* 
  15. inne case które nie będę opisywał, ale które się wykonują i też są połączenia z 
  16. azą, gdzie używam tylko SELECT-a i ostatni case ma w sobie formularz z polami POST['szostaka_1'...'szostka_40']':
  17. */
  18. break;
  19.  
  20. case 'relacja':
  21.  
  22. for ($a=1;$a<=40;$a++) {
  23.  
  24. if ($_POST['szostka_'.$a]!='') {
  25.  
  26. $post=$_POST['szostka_'.$a];
  27. $result = mysql_db_query($cfg['baza'],&#092;"UPDATE `sklady` SET `szostka` = '1' WHERE `sid` = '$post' LIMIT 1;\");
  28. if (!$result) echo mysql_errno().' '.mysql_error().'<br>';
  29. else {
  30. echo 'mysql_errno('.mysql_errno().') mysql_error('.mysql_error().')<br>';
  31. $WYKo=mysql_db_query($cfg['baza'],&#092;"SELECT * FROM `sklady` WHERE `sid` = '$post';\");
  32. $Wy=MySQL_fetch_array($WYKo);
  33. if ($Wy['szostka']==0) echo $Wy['nk'].'. '.$Wy['nazwisko'].' '.$Wy['imie'].' czy ma jedynke? Bo powinna mieć. A jest : <b>'.$Wy['szostka'].'</b> ! DLACZEGO??<br><br>';
  34. }
  35. }
  36.  
  37. } // for
  38.  
  39. break;
  40.  
  41. } // switch $H[2]
  42.  
  43. echo '</td>'
  44. .'</tr>'
  45. .'</table>'
  46. .'</div>';
  47.  
  48. ?>


Czy w/w problem może być związany z błędną konfiguracją serwera? Bo problem wygląda tak że zapytania do bazy w case relacja, poprostu się nie wykonują, a najgorsze że nie wywala błędu. sad.gif
Go to the top of the page
+Quote Post
zuku
post
Post #8





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 17.04.2002
Skąd: Jastrzębie Zdrój

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


Ten post wyżej napisałem JA smile.gif

errata do 4 linijki:
  1. <?php
  2. require_once('../../CONFIG.php');
  3. ?>


--------------------
GG: 1331870 | Morecambe Bay
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 Aktualny czas: 20.08.2025 - 09:19