Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Pobieranie rekordu z bazy danych
--Next--
post
Post #1





Goście







Witam, mam taki problem, że nie mogę pobrać rekordu z bazy danych przy użyciu zmiennej.

Tak działa:
$zapytanie = ("SELECT link FROM user WHERE name LIKE 'teskt'");

Ale gdy chcę wstawić zmienną np.
$zapytanie = ("SELECT link FROM user WHERE name LIKE '{$n}'");
To otrzymuję pustą treść czyli nic się nie pojawia.


a tak
$zapytanie = ("SELECT link FROM user WHERE name LIKE {$n}");
$wynik = mysql_query($zapytanie);

while ( $row = mysql_fetch_row($wynik) ) {
echo "<p>".$n." ma link " . $row[0];

pokazuję taki błąd
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/aibit/public_html/sb.php on line 19
gdzie 19 linia to przedostatnia.


Gdzie może leżeć problem i czy może ktoś polecić jakiś darmowy poradnik PHP i Mysql bo ogarniam trochę php ale nie mogę znaleźć zbyt wiele info o bazach danych czyli jak prawidłowo pisać zapytania.
Go to the top of the page
+Quote Post
Posio
post
Post #2





Grupa: Zarejestrowani
Postów: 417
Pomógł: 44
Dołączył: 23.06.2011

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


  1. while ( $row = mysql_fetch_row($zapytanie) )
  2. echo "<p>".$n." ma link " . $row[0];
Go to the top of the page
+Quote Post
_Borys_
post
Post #3





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Spróbuj zastosować trim() na $n przed wrzuceniem do zapytania, może masz niepożądane znaki.
Przykład autora tematu prawidłowy.
  1. while ( $row = mysql_fetch_row($wynik) ) {
  2. echo "<p>".$n." ma link " . $row[0];





Go to the top of the page
+Quote Post
--Next--
post
Post #4





Goście







Przekopując internet znalazłem rozwiązanie ale pojawił się nowy problem. Takim zapytaniem:

  1. $zapytanie = ("SELECT link FROM user WHERE `name`='$n'");
  2. $result = mysql_query($zapytanie);
  3.  
  4. while ( $row = mysql_fetch_row($result) )
  5. echo "<p>".$n." ma link " . $row[0];


odczytuje dane z rekordu o zmiennej $n ale pobierany jest tylko z kolumny link a chciałbym "wydobyć" kilka innych kolumn w jednym zapytaniu. Próbowałem po przecinku wypisywać ale nie działa i jak to później wyświetlić? Z góry dziękuję.
Go to the top of the page
+Quote Post
_Borys_
post
Post #5





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Jak to nie działa
Przykład
  1. $zapytanie = "SELECT name, link FROM user WHERE `name`='{$n}'";
  2. $result = mysql_query($zapytanie);
  3. while ( $row = mysql_fetch_row($result) )
  4. echo "<p>".$row[0]." ma link " . $row[1]."</p>";
  5. }

Przykład z mysql_fetch_assoc()
  1. $zapytanie = "SELECT name, link FROM user WHERE `name`='{$n}'";
  2. $result = mysql_query($zapytanie);
  3. while ( $row = mysql_fetch_assoc($result) )
  4. echo "<p>".$row['name']." ma link " . $row['link']."</p>";
  5. }


Ten post edytował _Borys_ 6.04.2014, 11:30:34
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 09:03