Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql]Profil użytkownika nie pobiera mi danych
Forum PHP.pl > Forum > Przedszkole
jacus24
Po wejścu na profil użytkownika powinno wyświetlać mi jego dane jednak tego nie robi. Gdzie mam błąd w tym kodzie?

uzytkownicy.php - wyświetla wszystkich użytkowników
  1. <?php
  2. $query = "SELECT * FROM user ";
  3. $result = mysql_query($query , $link)
  4.  
  5. while ($row = mysql_fetch_assoc($result)) {
  6.  $login = $row["login"];
  7.  
  8. <a href="uzytkownik.php?login=[$login]">
  9. ?>

uzytkownik.php
  1. <?php
  2. $get = htmlspecialchars($_GET['login']); 
  3.  
  4. $query = "SELECT * FROM user WHERE `login` = '".$get."'";
  5. $result = mysql_query($query , $link)
  6.  
  7. while ($row = mysql_fetch_array($result)) {
  8. $region = $row['region'];
  9.  
  10. }
  11. echo "$region";
  12. ?>
Piniek
Cytat
uzytkownicy.php - wyświetla wszystkich użytkowników
  1. <?php
  2. $query = "SELECT * FROM user ";
  3. $result = mysql_query($query , $link)
  4.  
  5. while ($row = mysql_fetch_assoc($result)) {
  6.  $login = $row["login"];
  7.  
  8. <a href="uzytkownik.php?login=[$login]">
  9. ?>

Nie domknloes petli z tego co widze winksmiley.jpg

Cytat
Kod
<?php
$get = htmlspecialchars($_GET['login']);
    
$query = "SELECT * FROM user WHERE `login` = '".$get."'";
$result = mysql_query($query , $link)
or die(mysql_error());

while ($row = mysql_fetch_array($result)) {
    $region = $row['region'];

}
echo "$region";
?>

Do wyswietlania tablic nie sluzy funkcja echo
( tego nie jestem pewien)

Pozdrawiam
jacus24
Pętle mam domkniętą tylko przeoczyłem ją kopiując kod tutaj.Wyświetlanie listy użytkowników działa tylko ten profil nie.
Piniek
wyskakuje jakis blad czy popoprostu sie nic nie wyswietla questionmark.gif
jacus24
Nic nie wyświetla
Piniek
usun cudzyslow przy login w zapytaniu do mysql-a
moze to to ale nie jestem pewien
potreb
  1. <?php
  2. $query = "SELECT * FROM user ";
  3. $result = mysql_query($query , $link)
  4.  
  5. while ($row = mysql_fetch_array($result)) {
  6. $login = $row['login'];
  7. echo '<a href="uzytkownik.php?login=$login">'.$row['login'].'</a>';
  8. }
  9. ?>
jacus24
Nic to nie dało dalej puste wyniki:(
potreb
Pokaż jak się łączysz zbazą. Druga sprawa, czy dane napewno sa w bazie skoro zwraca puste dane.
Przedtem podales 2 skrypty jeden do wyswietlania wszystkich uzytkownikow drugi do profilu uzytkownika, to ktory ci nie dziala? Moze nie przekazuje ci zmiennej bo:
echo '<a href="uzytkownik.php?login=$login">'.$row['login'].'</a>';
powinno być:
  1. <?php
  2. echo '<a href="uzytkownik.php?login='.$login.'">'.$row['login'].'</a>';
  3. ?>


Twoj pierwszy przykład:
  1. <?php
  2. $login = htmlspecialchars($_GET['login']); 
  3.  
  4. $query = "SELECT * FROM user WHERE `login` = $login";
  5. $result = mysql_query($query , $link)
  6.  
  7. while ($row = mysql_fetch_array($result)) {
  8. $region = $row['region'];
  9. echo "$region";
  10.  
  11. }
  12. ?>


Dlaczego echo regon wyswietlaleś poza pętlą? Zmienna $get pobierała ci z adresu nazwe loginu, nie stosuj takiego czegos. W zapytaniu zmienilem ci na login i bez cudzyslowow jak miałeś.
jacus24
  1. <?php
  2. $link = mysql_connect("localhost" , "root" , "krasnal")
  3.  or die(mysql_error());
  4. mysql_select_db("portal")
  5.  or die (mysql_error());
  6. ?>

Dane napewno są bo mam widok profilu ale swojego czyli jak się zarejestruje i możliwość edytownia( i wszystko się wyświetla)i mam ten sam kod na którym próbuje teraz zrobić widok profilu od strony innego użytkownika no i mam podgląd w phpadmine.
potreb
A polacznie z baza masz w tym samym pliku?
jacus24
Tak w tym samym
potreb
Pokaz w calosci te 2 pliki. Po przeróbkach.
jacus24
uzytkownicy.php
  1. <?php
  2.  
  3. $link = mysql_connect("localhost" , "root" , "krasnal")
  4.  or die(mysql_error());
  5. mysql_select_db("portal")
  6.  or die (mysql_error());
  7.  
  8. $query = "SELECT * FROM user ";
  9. $result = mysql_query($query , $link)
  10.  
  11. while ($row = mysql_fetch_array($result)) {
  12. $login = $row['login'];
  13. echo '<a href="uzytkownik.php?login=$login">'.$row['login'].'</a><br />';
  14. }
  15. ?>

uzytkownik.php
  1. <?php
  2. $link = mysql_connect("localhost" , "root" , "krasnal")
  3.  or die(mysql_error());
  4. mysql_select_db("portal")
  5.  or die (mysql_error());
  6.  
  7. $get = htmlspecialchars($_GET['login']); 
  8.  
  9. $query = "SELECT * FROM user WHERE login = '".$login."'";
  10. $result = mysql_query($query , $link)
  11.  
  12. while ($row = mysql_fetch_array($result)) {
  13. $region = $row['region'];
  14.  
  15. }
  16. echo "$region";
  17. ?>
potreb
  1. <?php
  2.  
  3. mysql_connect("localhost" , "root" , "krasnal") or die(mysql_error());
  4. mysql_select_db("portal")  or die (mysql_error());
  5.  
  6. $query = "SELECT * FROM user";
  7. $result = mysql_query($query)
  8.  
  9. while ($row = mysql_fetch_array($result)) {
  10. echo '<a href="uzytkownik.php?login='.$row['login'].'">'.$row['login'].'</a><br />';
  11. }
  12. ?>
  13.  
  14. <?php
  15. mysql_connect("localhost" , "root" , "krasnal") or die(mysql_error());
  16. mysql_select_db("portal") or die (mysql_error());
  17.  
  18. $login = htmlspecialchars($_GET['login']); 
  19.  
  20. $query = "SELECT * FROM user WHERE login = $login";
  21. $result = mysql_query($query)
  22. while ($row = mysql_fetch_array($result)) {
  23. echo $row['region'];
  24. }
  25.  
  26. ?>

Poprzednio napisałem co było nie tak, ale widocznie nie czytałeś.
I mnie ciekawi dlaczego w adresie wysyłasz nazwe loginu, zamiast id uzytkownika?
jacus24
Czytałem i zrobiłem. Po poprawieniu mam teraz
  1. <?php
  2. Nieznana kolumna 'krzys' w where clause
  3. ?>
potreb
  1. <?php
  2. $login = $_GET['login'];
  3. $query = "SELECT * FROM user WHERE login = '$login'";
  4. ?>


Pokaz jeszcze strukture tabeli user.
jacus24
Bardzo wielkie dzięki:)Jesteś wielki!!
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.