Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]logowanie błąd w kodzie
Forum PHP.pl > Forum > Przedszkole
konto789789
Witam próbuje napisać skrypt do logowania pobierający dane z bazy danych , ale występuje ciągle błąd , któremu nie wiem jak zaradzić.
Oto błąd: Fatal error: Call to undefined function mysqli_connect() in /home/accounts_k/konto789789/public_html/zastrzezone.php on line 17

błąd można obejrzeć na stronie: profitclicking.boo.pl/zastrzezone.php


Gdy zmieniam funkcje mysqli_connect na mysql_connect, mysqli_select_db na mysql_select_db, mysqli_query na mysql_query, mysqli_fetch_row na mysql_fetch_row
błąd można obejrzeć na stronie:profitclicking.boo.pl/zastrzezone.php
wyskakuje blad Nie można wykonać zapytania. Prosze o pomoc oto kod :

  1. <?php
  2. $uzytkownik = $_POST['uzytkownik'];
  3. $haslo = $_POST['haslo'];
  4.  
  5. if ((!isset($uzytkownik)) || (!isset($haslo))) {
  6. ?>
  7. <hl>Zaloguj się</hl>
  8. <p>Ta strona jest zastrzeżona. </ p>
  9. <form method = post action = "zastrzezone.php">
  10. <p> Użytkownik: <input type = "text" name = "uzytkownik"></p>
  11. <p>Ha sło: <input type = "password" name = "haslo"></p>
  12. <p><input type = "submit" name~"submit" value = "Zaloguj się " ></p>
  13. </form>
  14.  
  15. <?php
  16. } else {
  17. $mysql = mysqli_connect("localhost", "user", "password");
  18. if (!$mysql) {
  19. echo "brak polaczenie z baza";
  20. }
  21. $wybrana = mysqli_select_db("profitclicking");
  22. if (!$wybrana) {
  23. echo "blad wyboru bazy danych";
  24. }
  25.  
  26. $zapytanie = "select count(*) from uwierzytelnienie_uzytkownicy where
  27. uzytkownik = '".$uzytkownik."' and
  28. haslo = sha1('".$haslo."')";
  29.  
  30. $wynik = mysqli_query($mysql, $zapytanie);
  31. if (!$wynik) {
  32. echo "Nie można wykonać zapytania.";
  33. }
  34.  
  35. $wiersz = mysqli_fetch_row( $wynik );
  36. $ile = $wiersz [0];
  37.  
  38. if($ile > 0) {
  39. echo "<h1>oto ona</h1>;
  40. <p>jestes zadowolony?</p>";
  41. } else {
  42. echo "<h1>odejdz stad!</h1>
  43. <p> nie jestes tak dobry zeby to przegladac.</p>";
  44. }
  45. }
  46. ?>
b4rt3kk
Spróbuj obiektowo?

  1. $mysqli = new mysqli("localhost", "user", "password");


być może na serwerze jest stara wersja PHP i/lub MySQL?
-konto789789-
wyskakuje teraz taki błąd Fatal error: Class 'mysqli' not found in /home/accounts_k/konto789789/public_html/zastrzezone.php on line 17
ale jeśli tu zadziala to co z :
mysqli_select_db
mysqli_query
mysqli_fetch_row

Helid
  1. $wynik = mysql_query($zapytanie, $mysql); //mysql query zamiast to inna kolejnosc argumentów, najpierw zapytanie, później uchwyt
  2. if (!$wynik) {
  3. echo "Nie można wykonać zapytania.";
  4. }

http://php.net/manual/en/function.mysql-query.php
konto789789
Wyświetla:
Nie można wykonać zapytania.
mambus
A serwer obsługuje mysqli ?

wklep sobie
i zobacz jaką masz wersję i czy obsługuje powyższe.
konto789789
gdzie mam to wklepac sorry ale dopiero zaczynam

na cba.pl tez to testowałem a tam jest obsługiwane mysqli
nospor
No przecież to jest oczywiste że nie ma zainstalowanego mysqli..... Czego się nad tym rozwodzić....
A skoro nie ma mysqli to niech używa czystego mysql.

Zaś co do błędu
"Nie można wykonać zapytania."
To zamiast nic nie mówiącego tekstu wyświetlaj błąd zapytania a wszystko będzie jasne.
Tu masz napisane jak wyświetlać błędy zapytania:
Temat: Jak poprawnie zada pytanie
konto789789
oto błąd:

Warning: mysql_query() expects parameter 1 to be string, resource given in /home/accounts_k/konto789789/public_html/zastrzezone.php on line 34 Nie można wykonać zapytania.

  1. <?php
  2. ini_set('display_errors','1');
  3. $uzytkownik = $_POST['uzytkownik'];
  4. $haslo = $_POST['haslo'];
  5.  
  6. if ((!isset($uzytkownik)) || (!isset($haslo))) {
  7. ?>
  8. <hl>Zaloguj się</hl>
  9. <p>Ta strona jest zastrzeżona. </ p>
  10. <form method = post action = "zastrzezone.php">
  11. <p> Użytkownik: <input type = "text" name = "uzytkownik"></p>
  12. <p>Ha sło: <input type = "password" name = "haslo"></p>
  13. <p><input type = "submit" name~"submit" value = "Zaloguj się " ></p>
  14. </form>
  15.  
  16. <?php
  17. } else {
  18. $mysql = mysql_connect("xxl", "xx", "xx");
  19. if (!$mysql) {
  20. echo "brak polaczenie z baza";
  21. }
  22. $wybrana = mysql_select_db("profitclicking");
  23. if (!$wybrana) {
  24. echo "blad wyboru bazy danych";
  25. }
  26.  
  27. $zapytanie = "select count(*) from uwierzytelnienie_uzytkownicy where
  28. uzytkownik = '".$uzytkownik."' and
  29. haslo = sha1('".$haslo."')";
  30.  
  31. $wynik = mysql_query($mysql, $zapytanie);//TO TA LINIA W KTOREJ WYSTEPUJE BLAD
  32. if (!$wynik) {
  33. echo "Nie można wykonać zapytania.";
  34. }
  35.  
  36. $wiersz = mysql_fetch_row( $wynik );
  37. $ile = $wiersz [0];
  38.  
  39. if($ile > 0) {
  40. echo "<h1>oto ona</h1>;
  41. <p>jestes zadowolony?</p>";
  42. } else {
  43. echo "<h1>odejdz stad!</h1>
  44. <p> nie jestes tak dobry zeby to przegladac.</p>";
  45. }
  46. }
  47. ?>
nospor
No ale zamieniaj z głową a nie na oślep...

Nie: $wynik = mysql_query($mysql, $zapytanie);//TO TA LINIA W KTOREJ WYSTEPUJE BLAD
a: $wynik = mysql_query($zapytanie);//TO TA LINIA W KTOREJ WYSTEPUJE BLAD

Manuala po coś wymyślono...

Poza tym miałeś wyświetlać błąd zapytania.... nadal tego nie robisz. Linka przecież dostałes ode mnie.
jaworr
@konto789789

zaraz gimbaza się zleci i Ci bazę przeczyści, edytuj posta i ukryj hasło.
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.