Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] Dodawanie newsów
Misiuu
post
Post #1





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 13.10.2009

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


Witam, mam skrypt logowania wszystko działa : > ale chciałem zrobić by można było, dodawać wiadomości będąc zalogowanym. Więc dużo nie myśląć postanowiłem przerobić skrypt który zmieniał dane, takie jak e-mail , hasło blablabla..
więc stworzyłem taki kodzik



  1. <?php
  2.  
  3.  
  4. include 'db.php'; // połączenie się z bazą danych
  5. $tabela = 'uzytkownik'; // zdefiniowanie tabeli MySQL
  6.  
  7. if (isset($_SESSION['login'])) { // dostęp dla zalogowanego użytkownika
  8.  
  9. if ($_POST['wyslane']) { // jeżeli formularz został wysłany, to wykonuje się poniższy skrypt
  10.  
  11. // filtrowanie treści wprowadzonych przez użytkownika
  12. $login = htmlspecialchars(trim($_POST['login']));
  13. $tytul = htmlspecialchars(trim($_POST['tytul']));
  14. $tresc = htmlspecialchars(trim($_POST['tresc']));
  15. // system sprawdza czy prawidłowo zostały wprowadzone dane
  16.  
  17.  
  18. if ($tytul) {
  19. if (strlen($tytul) < 6 or strlen($tytul) > 30) {
  20. $blad++;
  21. echo '<p>Proszę poprawnie wpisać tytuł (od 6 znaków do 30 znaków) <p/>';
  22. }
  23. }
  24.  
  25.  
  26. // jeżeli błąd nie wystąpił, to dane zostają prawidłowo zapisane z bazie MySQL
  27. if ($blad == 0) {
  28. if ($login and $tytul and $tresc) {
  29.  
  30. $dodaj = "INSERT INTO posty (id,login,tytul,tresc,data) VALUES ('','$login','$tytul','$tresc','NOW()')";
  31.  
  32. if($dodaj) echo 'Rekord został dodany poprawnie';
  33. else echo "Błąd nie udało się dodać nowego rekordu";
  34. }
  35.  
  36. }
  37. }
  38.  
  39. $wynik = mysql_query("SELECT * FROM $tabela WHERE
  40. login='{$_SESSION["login"]}'");
  41. if ($wynik) {
  42. $informacja = mysql_fetch_array($wynik);
  43.  
  44. // tworzenie formularza HTML z danymi użytkownika
  45. echo <<< KONIEC
  46. <div class="tlotextu">
  47. <div class="tavatar">
  48. <div class="avatar">
  49.  <img src="{$informacja['avatar']}" class="avatar">
  50. </div></div><div class="tyk"></div>
  51. <div class="text"><div class="naglowek">Edycja Profilu</div><hr><div class="tresc">
  52.  
  53.   <form action="index.php?page=newpost" method="post">
  54.   <input type="hidden" name="wyslane" value="TRUE" />
  55.  
  56.   <input type="hidden" name="login" disabled="disabled" value="{$informacja['login']}" />
  57.  
  58. <p>Tytuł: <input type="text" name="tytul" class="tyt"/>
  59.   <p>Treść: <textarea type="text" name="tresc" class="area"></textarea></p>
  60.   <p><input type="submit" value="wyślij" /></p>
  61. </div>
  62. </div>
  63.  
  64. <div class="clear"></div><div class="odte"></div></div>
  65. KONIEC;
  66. }
  67. mysql_close($polaczenie);
  68.  
  69. } else {
  70. header('Location: / '); // niezalogowany użytkownik zostaje przekierowany na stronę główną
  71. }
  72.  
  73. ?>



Niestety, gdy tylko daje wyślij, odrazu sie wylogowuje sad.gif i nie dodaje rekordu, gdzie zrobiłem błąd i czy kod jest w miare poprawny? dziękuje i pozdrawiam

Dziękuje, ale poradziłem już sobie z problemem : >
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


Włącz raportowanie błędów i wtedy zobaczysz, że w tej linii jest coś nie tak
  1. $wynik = mysql_query("SELECT * FROM $tabela WHERE login='{$_SESSION["login"]}'");
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 Aktualny czas: 19.08.2025 - 16:14