Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP/SQL] Wykonanie 2 zapytaj w jednym.
Forum PHP.pl > Forum > Przedszkole
Pride
Witam.
Mam mały lub nawet duży dla mnie problem. Probuje zrobic dosyc prosty system newsow.
Zrobilem juz wyswietlanie:
Tematu
Treści
Daty
Autora
Teraz chodzi o to, aby zrobic cos takiego ze dany Autor ktory napisal newsa mial taki niby profil. Ma to wyglodac tak:

1. Tabela `newsy` w niej pole `nick`, `news`, `date`, `topic`.
2. Tabela `users` w niej pola `nick`, `mail`.

Teraz w trakcie wykonywania pentli z `news` ma poprac nick i mail sortujac poprzez `nick`. Moj kod wyglada tak:
  1. <?php
  2. $result = @mysql_query('SELECT * FROM `newsy` ORDER BY `id` DESC LIMIT 10');
  3. while ($record = @mysql_fetch_assoc($result)) 
  4. {
  5. echo "<table border='1' align='center' style='width: 600px;'>
  6. <tr>
  7. <td colspan='2' style='height: 20px; width: 600px;'><span class='nagmin'>" . $record['topic'] . "</span></td>
  8. </tr>
  9. <tr>
  10. <td colspan='2' style='height: 210px; width: 600px; vertical-align: top; text-align: justify;'><span>" . $record['news'] . "</span></td>
  11. </tr>
  12. <tr style='height: 20px; width: 600px; text-align: left;'>
  13. <td style='width: 400px;'><span>Data: " . $record['date'] . "</span></td>";
  14.  
  15. $result2 = @mysql_query('SELECT `nick`, `mail` FROM `users` WHERE `nick` = "' . $record['user'] . '"');
  16. $a = @mysql_result($result2,0);
  17. $record2 = @mysql_fetch_assoc($result2);
  18.  
  19. echo "<td style='width: 200px;'><span>Dodał: <a href='" . $record['user'] . "'>" . $a . "</a></span></td>
  20. </tr>
  21. </table>";
  22. }
  23. ?>

Jak widac, jest to błędne bo $a moze byc tylko jedną rzeczą - w tym przypadku jest on `nick'iem`.
Pozdrawiam i prosze o pomoc.
Pride
tsharek
  1. SELECT * FROM `newsy` JOIN `users` ON `users`.`nick`=`newsy`.`nick` ORDER BY `nick` DESC LIMIT 10


Nie wiem czy o to chodziło bo słabo opisałeś problem.
Pride
Hehe bo to tak jakos ciezko opisac ale moze tak:
Mam w bazie 2 tabele:
1. `newsy` w niej są: (id), Topic, Newsy, User, Date.
2. `users` w niej są: (id), Nick, Mail.

Pobieramy teraz newsy z bazy:
  1. <?php
  2. $result = @mysql_query('SELECT * FROM `newsy` ORDER BY `id` DESC LIMIT 10');
  3. while ($record = @mysql_fetch_assoc($result)) 
  4. {
  5. echo "$record['topic'];";
  6. echo "$record['news'];";
  7. echo "$record['date'];";
  8.  
  9. $result2 = @mysql_query('SELECT `nick`, `mail` FROM `users` WHERE `nick` = "' . $record['user'] . '"');
  10. $a = @mysql_result($result2,0);
  11. $record2 = @mysql_fetch_assoc($result2);
  12.  
  13. echo "<a href='" . $TuMaBycMail . "'>" . $a . "</a>";
  14. }
  15. ?>

No i ogolnie ten kod jest bledny poniewaz zamiast tego $a powinna byc kolejna pentla dzieki ktorej moglbym uzyc $record2['mail']; i $record2['nick']. Jednak to jest niemozliwe. Dlatego szukam innego sposobu na to.
Mysle, ze teraz bedzie to bardziej zrozumiale smile.gif
Pozdrawiam

P.S. Czemu to kolorowanie jest takie hmmm dziwne? Poczatek koloruje a dalej juz nie >.>


Sorki, ze post po postem, ale zaraz temat zniknie z pierwszej strony, a ja nadal szukam odpowiedzi smile.gif



Czy mi się zdaje, czy nikt nie potrafi mi pomoc? tongue.gif
plurr
moze fetch_array zamiast resulta ?
macza
heh wystartczy ze zmienisz:
$a => $a[nick]
$TuMaBycMail => $a[mail] czy jak tam masz tongue.gif
mild
Poza tym nicka użytkownika masz już w zmiennej $record['user'], więc nie ma sensu pobieranie go z bazy. Wystarczy, że pobierzesz mail.
A do maila faktycznie, tak jak mówi Macza: $a['mail']
Pride
Hehe no wsumie tak. Nawet dziala ale... wtf? Wyswiatla TYLKO 1 litere haha.gif tak jak mail jest ania@lala.pl to wyswiatla tylko a haha.gif Co jest? tongue.gif
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.