Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Pobieranie wiersza z bazy danych
Forum PHP.pl > Forum > Przedszkole
-jacek-
Witam, załóżmy ze mam dwie bazy danych o nazwach : news i komentarze.

[Komentarze]
  1. id Przynaleznosc uzytkownik tresc DATA
  2. 3 NULL 3211 lubie placuszki 2010-12-28 14:27:49

[news]
  1. id tresc temat DATA
  2. 21 firmy orazaasdas zdobyte... O mnie 2011-01-04 18:36:48


Chciałbym pobrać wartość [id] z tabeli news i wpisać ją w tabele komentarze w kolumnę [przynaleznosc]. Tak żeby news został przydzielony do komentarza i wyświetlony poniżej. Nie za bardzo wiem jak się za to zabrać, póki co wyświetla mi poprawnie jeżeli mam tylko jeden news, wtedy wszystkie komentarze pokazuje się pod nim.
Tutaj zamieszczam cały kod ..

  1. <?php
  2. require_once('bd.php');
  3. $komentarz = $_POST['komentarz'];
  4. $uzytkownik = $_SESSION['login'];
  5. $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
  6. $query = "SELECT * FROM news";
  7.  
  8. $wynik = mysqli_query($dbc, $query);
  9. while ($row = mysqli_fetch_array($wynik)) {
  10. echo '<div id="polozenie2">' . substr($row['data'], 0, 10) . '</div>';
  11. echo '<div id="polozenie3">' . $row['temat'] . '</div>' ;
  12. echo '<div id="polozenie4"> ' . $row['tresc'] . '</div>' ;
  13. if (!empty($_SESSION['id'])) {
  14. echo '<a href=".php">Komentarze uzytkowników</a>';
  15. }
  16. echo '<br />';
  17.  
  18. if(isset($_POST['submit'])){
  19. if(!empty($komentarz)){
  20. $query = "INSERT INTO komentarze VALUES('', '$uzytkownik', '$komentarz', now())"; // Tutaj mam problem.
  21. mysqli_query($dbc, $query);
  22. echo '<div id="powiadomienie">';
  23. echo 'Dodano newsa';
  24. echo '</div>';
  25. mysqli_close($dbc);
  26. }
  27. else {
  28. echo '<div id="error">';
  29. echo 'Uzupełnij pole';
  30. echo '</div>';
  31. }
  32. }
  33. mysqli_close($dbc);
  34. if (!empty($_SESSION['id'])) {
  35. ?>
  36. <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
  37. <label for="username">Komentarz:</label>
  38. <input type="text" name="komentarz" size="25" />
  39. <input type="submit" value="Dodaj komentarz" name="submit" /><br><br>
  40. </form>
  41.  
  42. <?php
  43. }}
  44.  
  45.  
  46. ?>



ciekawskiii
Dodajac komentarz, w pole przynaleznos dodajesz id newsa i wtedy komentarze wyswietlasz wedlug tego id warunkiem
-jacek-
no to wiem, ale nie wiem dokladnie jak to mam zrobic.. moglbys podac na przykladzie ? winksmiley.jpg
kuba_pilach
Pewnie wiem jak to zrobić, ale byś musiał bardziej to wytłumaczyć (tak zwanie zrobić analizę problemu), bo tak to nie rozumiem twojego problemu... weś szybko odpisz...
-jacek-
Wiec jest dana strona na której poprzez PHP dodaje newsy(już go mam i działa), teraz staram się zrobić podobny skrypt żeby dodawał komentarze pod newsami. Każdy z tych komentarzy ma być przypisany do newsa pod którym został dodany. Cos jakby tutaj na forum. Do każdego tematu są przyporządkowane dane posty. winksmiley.jpg
kuba_pilach
Ale teraz tak... masz dwie tabele? Na komentarze i newsy?
Jeśli tak to przy pisaniu komentarza dodajesz dany id newsa do komentarze, a potem to pokazujesz...
-jacek-
I tutaj pytanie do was, jak pobrac wartosc id z tabeli news i wstawic do tabeli komentarze. prosze o przyklad smile.gif
ciekawskiii
A jak pobierasz tresc newsa?! Tak samo pobierasz id newsa, trzymasz to id w sesji, cookie lub w linku (GET) i po dodaniu komentarza przypisujesz to id
-jacek-
ok zrobione, teraz tylko mam problem z zapytaniem, zrobilem takie i niestety nie chce dzialac..

  1. $query2 = "SELECT * FROM komentarze WHERE komentarze.przynaleznosc = news.id";
set4812
Albo jak otwierasz newsa to dajesz GET id newsa z bazy pobierasz news a potem pobierasz komentarze z id newsa ktorego masz w GET
-jacek-
Teraz z kolei mam inny problem.. Dodaje mi przynaleznosc do pierwszego news'a, prawidlowo, ale jak dodaje news'a do drugiego to pokazuje mi dalej przynaleznosc pierwszego..

cos w tym stylu :
  1. id Przynaleznosc uzytkownik tresc DATA
  2. 219 1 321 11 2011-01-13 10:46:56
  3. 218 1 321 22 2011-01-13 10:46:53


kurde panowie pomóżcie mi.. juz trace nerwy. Siedze nad tym od ponad 5 godzin i nie wiem gdzie moge miec blad..

tutaj zamieszczam kod:
  1. <?php
  2.  
  3. ini_set('display_errors','1');
  4. require_once('bd.php');
  5.  
  6. $uzytkownik = $_SESSION['login'];
  7. $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
  8. $news = "SELECT * FROM news";
  9. $wynik = mysqli_query($dbc, $news);
  10. while ($row = mysqli_fetch_array($wynik)) {
  11. $zmienna = $row['id_news'];
  12. echo '<div id="polozenie2">' . substr($row['data'], 0, 10) . '</div>';
  13. echo '<div id="polozenie3">' . $row['temat'] . '</div>' ;
  14. echo '<div id="polozenie4"> ' . $row['tresc'] . '</div>' ;
  15. echo $zmienna;
  16. if (!empty($_SESSION['id'])) {
  17. echo '<a href="index_komentarze.php">Komentarze uzytkowników</a>';
  18. }
  19. if(isset($_POST['submit'])){
  20. if(!empty($komentarz)){
  21. $komentarz = $_POST['komentarz'];
  22. $query = "INSERT INTO komentarze VALUES('','$zmienna', '$uzytkownik', '$komentarz', now())";
  23. mysqli_query($dbc, $query);
  24. echo '<div id="powiadomienie">';
  25. echo 'Dodano newsa';
  26. echo '</div>';
  27. }
  28. else {
  29. echo '<div id="error">';
  30. echo 'Uzupełnij pole';
  31. echo '</div>';
  32. } mysqli_close($dbc);
  33. }
  34. echo '<br />';
  35.  
  36.  
  37.  
  38. if (!empty($_SESSION['id'])) {
  39. ?>
  40. <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
  41. <label for="username">Komentarz:</label>
  42. <input type="text" name="komentarz" size="25" />
  43. <input type="submit" value="Dodaj komentarz" name="submit" /><br><br>
  44. </form>
  45.  
  46. <?php
  47. }}
  48. ?>




Blad jaki mi sie wyswietla to :

Warning: mysqli_query() [function.mysqli-query]: Couldn't fetch mysqli in /www/payne3_www/www/wyswietl_tekst.php on line 144
Dodano newsa

Warning: mysqli_close() [function.mysqli-close]: Couldn't fetch mysqli in /www/payne3_www/www/wyswietl_tekst.php on line 153
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.