Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP]Jak to ugryźć?
Macck
post 11.09.2009, 21:09:53
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 19.02.2009

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


Witam ,

Mam problemik :

Otóż mam logowanie oparte na php i plikach tekstowych (oraz sesji)
i po przekierowaniu wyświetlana jest zmienna
Jesteś zalogowany jako : Macck

($_SESSION['zalogowany'] )

Mam też system newsów oparty na MySql i trzeba podać treść newsa i autora.

Ja chciałbym żeby autor się sam podawał ze zmiennej 'zalogowany'
ale nie mam pojęcia jak to zrobić

  1. // lacze sie z baza
  2. require('db_connect.php');
  3. // jesli wybrano jakis konkretny news
  4. if(intval($_GET['newsid']))
  5. {
  6. // powrot do wszystkich newsow (nazwa news.php jest oczywiscie dla przykladu)
  7. echo '<p><a href="news.php">Najnowsze newsy</a></p>';
  8.  
  9. // pobieram newsa
  10. $sql="SELECT DATE_FORMAT(dodano, '%e-%m-%Y %H:%i') AS utworzono, autor, tresc FROM newsy WHERE id='".intval($_GET['newsid'])."'";
  11. $query=mysql_query($sql);
  12. if($result=mysql_fetch_assoc($query))
  13. {
  14. // zawartosc newsa
  15. echo '<p>'.nl2br($result['tresc']).'</p>';
  16. // autor
  17. echo '<p><i>'.$result['autor'].' ('.$result['utworzono'].')</i></p>';
  18. // oddzielam od komentarzy
  19. echo '<hr>Komentarze:<br>';
  20.  
  21. // dopisuje komentarz do bazy
  22. if($_POST)
  23. {
  24. if((trim($_POST['autor'])) && (trim($_POST['tekst'])))
  25. {
  26. if(mysql_query("INSERT INTO komentarze VALUES('', '".intval($_GET['newsid'])."',
  27. NOW(), '".trim(htmlspecialchars($_POST['autor']))."', '".trim(htmlspecialchars($_POST['tekst']))."')"))
  28. echo 'Dodałem komentarz';
  29. else echo 'Nie mogłem dodać komentarza';
  30. }
  31. else echo 'Nie dopisałem komentarza - podaj swoje imię i wpisz jakiś komentarz!';
  32. echo '<br>';
  33. }
  34.  
  35. // pobieram komentarze do newsa od najstarszego do najnowszego
  36. $sql="SELECT DATE_FORMAT(dodano, '%e-%m-%Y %H:%i') AS utworzono, autor, tresc FROM komentarze WHERE id='".intval($_GET['newsid'])."'";
  37. $query=mysql_query($sql);
  38. while($result=mysql_fetch_assoc($query))
  39. {
  40. print('<p>'.nl2br($result['tresc']).' ('.$result['autor'].'/'.$result['utworzono'].')</p>');
  41. }
  42.  
  43. // formularz do dodawania komentarza
  44. ?>
  45. <hr>
  46. <form name="komentarz" method="post" action="news.php?newsid=<? echo intval($_GET['newsid']); ?>">
  47. Dodaj komentarz:<br>
  48. <textarea name="tekst" rows="5" cols="40"></textarea><br>
  49. Autor:<br>
  50. <input type="text" name="autor"><br>
  51. <input type="reset" value="wyczyść"> <input type="submit" value="wyslij">
  52. </form>
  53. <?
  54. }
  55. }
  56. // wszystkie newsy
  57. else
  58. {
  59. // pobieram newsy w kolejnosci od najnowszego do najstarszego
  60. // przy pomocy zlaczenia z drugiej tabeli wyciagam ilosc komentarzy dla każdego newsa
  61. $sql="SELECT newsy.id, DATE_FORMAT(newsy.dodano, '%e-%m-%Y %H:%i') AS utworzono,
  62. newsy.autor, newsy.tresc, COUNT(lp) AS il_kom
  63. FROM newsy
  64. LEFT JOIN komentarze ON (komentarze.id=newsy.id)
  65. GROUP BY newsy.id ORDER BY newsy.dodano DESC";
  66. $query=mysql_query($sql);
  67. while($result=mysql_fetch_assoc($query))
  68. {
  69. // zawartosc newsa
  70. echo '<p>'.nl2br($result['tresc']).'</p>';
  71. // autor
  72. echo '<p><i>'.$result['autor'].' ('.$result['utworzono'].')</i></p>';
  73. // ilosc komentarzy i link do nich
  74. echo '<p><a href="news.php?newsid='.$result['id'].'">Komentarze: ('.$result['il_kom'].')</a></p>';
  75. // oddzielam od pozostalych
  76. echo '<hr>';
  77. }
  78. }?>
  79. <br>
  80. <?
  81. // lacze sie z baza danych
  82. require('db_connect.php');
  83. // spradzam czy wyslano formularz
  84. if($_POST)
  85. {
  86. // sprawdzam czy wypelniono wymagane pola
  87. if((trim($_POST['autor'])) && (trim($_POST['tekst'])))
  88. {
  89. // dodaje newsa do bazy
  90. if(mysql_query("INSERT INTO newsy VALUES('', NOW(),
  91. '".trim(htmlspecialchars($_POST['autor']))."',
  92. '".trim(htmlspecialchars($_POST['tekst']))."')"))
  93. echo 'Dodałem news o ID:'.mysql_insert_id();
  94. else echo 'Nie mogłem dodać newsa';
  95. }
  96. else echo 'Nie podałeś autora lub treści newsa';
  97. }
  98. ?>
  99. <hr>
  100. <form name="news" method="post" action="aserethaskr912masalejasl827dka2.php">
  101. Treść newsa:<br>
  102. <textarea name="tekst" rows="5" cols="40"></textarea><br>
  103. Autor:<br>
  104.  
  105. <input type="text" name="autor"><br>
  106. <input type="reset" value="wyczyść"> <input type="submit" value="wyslij">
  107.  
  108. </form>



Tak wygląda dodawanie newsów (i odczytwyanie) do bazy.
Teraz , gdzie tu upchnąć moją zmienną tak aby się sam nick podstawiał?
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.08.2025 - 02:50