Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Błędne użycie mysql_fetch_array()
lolkiewicz
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 12.03.2012

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


Witam,
mam problem ponieważ na windowsie wszystko działa i nie ma problemów, a jak wrzuciłem pliki na serwer(linux) to wywala mi błąd.
[code]warning mysql_fetch_array() expects parameter 1 to be resource boolean given in /home/u2/public_html/videos.php on line 79.

Ten sam błąd jest też w 39 lini gdy wybieram jedną z kategorii

Tu macie videos.php
http://wklej.org/id/779180/

videoscomment.php
http://wklej.org/id/779179/

i jest jeszcze videossql.php ale tam sa tylko info do połączenia z bazą danych.

Proszę was o pomoc. Bo nie ogarniam już tego :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
gr56
post
Post #2





Grupa: Zarejestrowani
Postów: 77
Pomógł: 15
Dołączył: 19.11.2011

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


mysql_query zwraca boolean false kiedy jest błąd w zapytaniu lub występuje problem w połączeniu z bazą danych.
W twoim przypadku to za pewne to drugie.
Go to the top of the page
+Quote Post
lolkiewicz
post
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 12.03.2012

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


Dobra ale jak miałem nie poprawne dane do połączenia z bazą danych to były inne błędy. Więc to chyba nie to. Jest jeszcze jakaś inna możliwość ?
Go to the top of the page
+Quote Post
gr56
post
Post #4





Grupa: Zarejestrowani
Postów: 77
Pomógł: 15
Dołączył: 19.11.2011

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


Sprawdź co zwraca mysql_error()
Go to the top of the page
+Quote Post
lolkiewicz
post
Post #5





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 12.03.2012

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


Z tego co widzę w kodzie to nic nie zwraca ?

A to jest ten kawałek:
  1. if(!mysql_query($sql)){
  2. $erro = mysql_error();
  3. echo "Ocorreu o seguinte erro: ", '"', $erro, '"';
  4. } else {
  5. $sucesso = "Comment Sucessfull!";
  6. $sucesso = "?subtopic=videos&action=view&videoid=$videoid&msg=$sucesso";
  7. header("Location: $sucesso");
  8. }
Go to the top of the page
+Quote Post
AdIoS_Neo
post
Post #6





Grupa: Zarejestrowani
Postów: 159
Pomógł: 43
Dołączył: 8.03.2009

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


Witam,
po co Ci aż 4 razy
  1. include('videossql.php');
raz w 13 linij zupełnie wystarczy, i dlaczego
  1. mysql_query("$sql")
po co te cudzysłowy ? Przecież $sql to zmienna, a z niczym nie łączysz jej zawartości. Powinno być tak:
Go to the top of the page
+Quote Post
d3ut3r
post
Post #7





Grupa: Zarejestrowani
Postów: 709
Pomógł: 176
Dołączył: 24.10.2010

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


Dodam jeszcze totalny brak filtrowania zmiennych np:

  1. $idcoment = $_GET["idcoment"];
  2. $idcoment=strtr($idcoment, '\'', '*');
  3. if (($action == "delcomment") && ($idcoment != "")){
  4. $sql = "SELECT * FROM comentarios WHERE id=$idcoment LIMIT 1";


Nie chcę tu robić offtopu, ale jak to jest że od x czasu na tym forum zazwyczaj przy kodzie mysql_* ktoś doda komentarz, żeby dla bezpieczeństwa korzystać choćby z PDO a nikt tego nie stosuje smile.gif poza tym jak spodziewasz się dostać id w postaci liczby całkowitej to zrób:

  1. $idcoment = (int)$_GET['idcoment'];


Co do samego problemu zrób sobie echo $sql wklej do phpmyadmina i zobacz czy działa.




--------------------
http://d3ut3r.wordpress.com/ | mysql_* jest przestarzałe UŻYWAJ PDO!
Go to the top of the page
+Quote Post
lolkiewicz
post
Post #8





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 12.03.2012

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


Dobra problem rozwiazany smile.gif dzięki za wszystko chłopaki smile.gif
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: 21.08.2025 - 12:54