Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z mysql
Forum PHP.pl > Forum > Przedszkole
yuri
Witam. Mam problem ze skryptem, a generalnie chodzi o Mysql. Skrypt zwraca mi:
Kod
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in D:\__Apache Group\Apache2\www\RCA\index.php on line 97


Dodam jeszcze kilka informacji:
1. W bazie mam 3 rekordy, i skrypt WYKONUJE to co ma wykonać ale TYLKO dla PIERWSZEGO rekordu.
  1. <?php
  2.  
  3. $execute = mysql_query( 'SELECT * FROM pracownicy', $sql);
  4. while ( $pracownik = mysql_fetch_assoc ( $execute ))
  5. {
  6. $tytul_przelewu = 'SARCO_PENSJA_DLA_PRACOWNIKA_'. $pracownik['id'];
  7. $pensja = przelew ($konto_id, $konto_pass, $pracownik['konto'], $pracownik['bank'], $tytul_przelewu, $pracownik['pensja']);
  8.  
  9. if (!$pensja)
  10. {
  11. echo('Nie powiodło się wykonanie przelewu');
  12. mysql_close($sql);
  13. }
  14. else
  15. {
  16. echo ('Przelew dla pracownika '. $pracownik['id'] .' wykonany prawidłowo');
  17. $query = 'UPDATE pracownicy SET przelew = CURDATE( ) WHERE id =''. $pracownik['id'] .'' LIMIT 1 ';
  18. $execute = mysql_query ($query, $sql);
  19. if (!$execute)
  20. {
  21. echo (' Nie udało się zaktualizować bazy!<br /><hr />');
  22.  
  23. }
  24. else
  25. {
  26. echo ('<br />Baza zaktualizowana poprawnie!<br /><hr />');
  27. }
  28. }
  29.  
  30. ?>

Warning pokazuje sie po napisie: Baza zaktualizowana. I tak jak napisałem wczesniej, wykonuje sie tylko dla jednego, pierwszego rekordu w tabeli a nie dla wszystkich. PS.: Linia 97 o której mowa w warningu, to linia 4 w poście.
mdco
Wykonaj to zapytanie bezpośrednio w bazie danych: SELECT * FROM pracownicy i sprawdź czy zwraca Ci to co powinno. Sprawdź tez identyfikator połaczenia $sql.
nospor
@mdco zapytanie jest poprawne. przeciez masz napisane ze zwraca pierwszy rekord winksmiley.jpg
idąc tym tropem, należ spojrzeć, czy przypadkiem nie nadpisujesz zmiennej $execute. No i co znajdujemy pare lini nizej w petli:
  1. <?php
  2.  
  3. ///...
  4. $execute = mysql_query ($query, $sql);
  5. //......
  6.  
  7. ?>
smile.gif
Zapisuj to do innej zmiennej a bedzie ok
yuri
Nie ma co ukrywać, racja! biggrin.gif Dzięki wielkie!
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.