Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Pomoc przy skrypcie PHP
wiktor000
post 21.04.2018, 01:05:00
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 23.02.2018

Ostrzeżenie: (10%)
X----


Witam,
Ostatnią tak z nudów zaczałem robić stronę, mam na niej logowanie + rejestracje ,taką prostą.
I chciałem zrobić przeglądanie profili tylko nie wiem jak wyświetlić rekord o danym id
np. jest : http://localhost/profile.php#=2 i żeby wyświetlało informacje z id 2 np: kraj zamieszkania
Dzięki za wszystkie porady itp.

Ten post edytował wiktor000 21.04.2018, 01:05:48
Go to the top of the page
+Quote Post
Tomplus
post 21.04.2018, 01:40:20
Post #2





Grupa: Zarejestrowani
Postów: 1 834
Pomógł: 225
Dołączył: 20.03.2005
Skąd: Będzin

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


Podstawa.

hash # to znak kotwicy w URL, przenosi cię tam gdzie w html jest ID o podanej nazwie, a w URL powinno być:

znak ? jako separator między ścieżką a parametrami

/profile.php?id=2
w php echo $_GET['id'];
Go to the top of the page
+Quote Post
wiktor000
post 21.04.2018, 01:54:16
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 23.02.2018

Ostrzeżenie: (10%)
X----


Możesz mi to jakoś bardziej wyjaśnic ,dopiero zaczynam z PHP, mam taki error
Notice: Undefined index: id in C:\xampp\htdocs\profile.php on line 3

  1. <?PHP
  2. $id = $_GET['id'];
  3. ECHO $_GET['id'];
  4.  
  5. $polacz = mysqli_connect("localhost", "root" ,"","zarejestrowani2");
  6. $pokaz = mysqli_query($polacz,"SELECT * FROM zarejestrowani2 ");
  7.  
  8.  
  9. ?>
Go to the top of the page
+Quote Post
Kshyhoo
post 21.04.2018, 06:30:02
Post #4





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




W mojej stopce znajdziesz potrzebne informacje, również, jak poprawnie zatytułować wątek...


--------------------
Go to the top of the page
+Quote Post
PawelC
post 21.04.2018, 07:14:06
Post #5





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


Masz stronę główną index.php i na niej link do profilu w postaci http://localhost/profile.php?id=1
Po kliknięciu w link, przenosi Cię na podstronę profile.php, i za pomocą metody GET przesyłasz parametr id z wartością 1.

Czyli aby wyświetlić teraz profil o ID 1, musisz odebrać parametr id z url w taki sposób np $id =(int)$_GET['id']. Obowiązkowo musisz sprawdzić czy jest to liczba, inaczej będzie można Ci namieszać w bazie. Kolejną rzeczą jaką musisz zrobić, jest wstawienie wartości tego pola do zapytania select, czyli:
  1. SELECT * FROM profile WHERE id=$id
dalej zostaje Tobie to wyświetlić, ale w tym kierunku to już sam podziałaj, nie ma żadnej filozofii.
Go to the top of the page
+Quote Post
wiktor000
post 21.04.2018, 11:22:24
Post #6





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 23.02.2018

Ostrzeżenie: (10%)
X----


Dzięki exploit
Mam taki kod i wszystko śmiga
  1. <?php
  2. $id = $_GET['id'];
  3. $polacz = mysqli_connect("localhost", "root" ,"","zarejestrowani2");
  4. $wyswietl = mysqli_query($polacz,"SELECT * FROM zarejestrowani2 WHERE id = ' ".$id." ' ");
  5.  
  6. while($row = mysqli_fetch_array($wyswietl)){
  7. ?>
  8. <a href="logujphp.php">Strona Główna</a>
  9. <P>Aktualnie przeglądasz profil użytkownika: </p><p style="color: red;"> <strong><?php echo $row['nick'];?></strong>
  10. <Center>
  11. <table style="border: 2px solid black;">
  12. <tr>
  13. <th >Id</th>
  14. <th >Nick</th>
  15. <th >Haslo</th>
  16. </tr>
  17. <tr>
  18. <td ><?php echo $row['id'];?></td>
  19.  
  20. <td ><?php echo $row['nick'];?></td>
  21. <td ><?php echo $row['haslo'];?></td>
  22. </table>
  23. <style>
  24. body {
  25. FONT-family:arial;
  26. }
  27. th {
  28. display: table-cell;
  29. vertical-align: inherit;
  30. font-weight: bold;
  31. text-align: center;
  32. font-family: arial;
  33.  
  34. }
  35. td {
  36. display: table-cell;
  37. vertical-align: inherit;
  38. font-weight: bold;
  39. text-align: center;
  40. font-family: arial;
  41. width: 100px;
  42. white-space: nowrap;
  43.  
  44. }
  45. </style>
  46. <?php
  47. }
  48. ?>
Go to the top of the page
+Quote Post
PawelC
post 21.04.2018, 11:53:47
Post #7





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


Wszystko super, tylko sprawdź czy ID na pewno jest liczbą, bo tego u Ciebie nie widzę, i kolejna rzecz filtruj dane które wyświetlasz i wysyłasz do bazy. Ważna rzecz którą u Ciebie zauważyłem, kiedy pobierasz tylko jeden rekord z bazy, pętla while jest niepotrzebna, wystarczy użyć mysql_fetch_row zamiast mysql_fetch_array.

Zainteresuj się funkcjami strip_tags() oraz htmlspecialchars()

Ten post edytował ExPlOiT 21.04.2018, 11:58:36
Go to the top of the page
+Quote Post
q3d
post 21.04.2018, 15:06:30
Post #8





Grupa: Zarejestrowani
Postów: 98
Pomógł: 7
Dołączył: 10.01.2006

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


Myślę, że wiele może Ci rozjaśnić zapoznanie się z tym kursem (Pasja Informatyki):
https://www.youtube.com/watch?v=Pp578w7C9hE&t=3858s
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 Wersja Lo-Fi Aktualny czas: 19.04.2024 - 11:07