Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] 'Kropka' jako fragment kodu, a nie jako znacznik kończący część zawierającą PHP. / Problem z AS.
pawel.ad
post
Post #1





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 8.03.2010
Skąd: Zielona Góra

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


Witam.

Odpowiedź zapewne będzie banalna, ale nie mam pojęcia jak sformułować zapytanie do Googla, albo zatytułować wątek.

Mianowicie chce wyświetlić:
  1. echo "<h2>".$wiersz[teams.name]."</h2>"

tak, żeby pokazywało mi 'name' z bazy 'teams', a nie z bazy 'players';

Tylko że ta kropka w 'teams.name' jest uznawana za koniec kodu PHP.
Wiem czemu jest źle, ale nie wiem jak to poprawić.

Jak powinno się to poprawnie napisać?

Ten post edytował pawel.ad 9.03.2010, 17:10:20
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sadistic_son
post
Post #2





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Spróbuj tak:
  1. $id=intval($_GET['id']);
  2. require "connection.php";
  3. Wydobywamy Imię, nazwisko i nazwę drużyny.
  4. $zapytanie = "SELECT `players` . * , `teams` . * FROM `teams` , `players` WHERE players.team_id =".$id." AND teams.id = $id ORDER BY `lastname`";
  5. $wynik = mysql_query($zapytanie);
  6. if($wynik and $id) {
  7. mysql_num_rows($wynik);
  8. $team = mysql_fetch_array($wynik,MYSQL_NUM);
  9. echo '<h2><pre>';
  10. //zamiast np. $team['team.name'] uzyj odpowiadajacego mu numeru kolumny z bazy danych. Czyli np jesli kolumna name jest pierwsza w tabeli team to $team[0].
  11.  
  12. print_r($team[0]);
  13. echo'</pre></h2>';
  14. while($wiersz = mysql_fetch_array($wynik,MYSQL_NUM)) {
  15.  
  16. //tutaj analogicznie tez uzywaj numeracji kolumn pamietajac ze pierwszy element to 0.
  17. echo "<p class=\"player\"><a href=\"stats.php?team_id=$wiersz[1]&player=$wiersz[2]\">$wiersz[3]&nbsp;&nbsp;$wiersz[4]</a></p>";
  18. }
  19.  
  20. }
  21. else include ('allteam.php');


Ten post edytował sadistic_son 9.03.2010, 15:57:33
Go to the top of the page
+Quote Post
pawel.ad
post
Post #3





Grupa: Zarejestrowani
Postów: 60
Pomógł: 0
Dołączył: 8.03.2010
Skąd: Zielona Góra

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


~sadistic son, wpadłem na to samo, ale stwierdziłem że aliasy są bardzie praktyczne;

próbuje więc:
  1. SELECT `players`.`id`, `players`.`name`, `players`.`lastname`, `players`.`team_id`, `teams`.`id`, `teams`.`name`
  2. AS p_id, p_name, p_lastname, p_teamid, t_id, t_name
  3. FROM `teams`, `players`
  4. WHERE ((`players`.`team_id` = $id) AND (`teams`.`id` = $id))
  5. ORDER BY `lastname`

ale za każdym razem jak próbuje wykonać te zapytanie w phpmyadmin, wyświetla mi błąd:
#1054 - Unknown column 'p_name' in 'field list'
Z kolei gdy usuwam "AS ..." wszystko jest OK.

Jak powinno wyglądać to zapytanie, żeby przypisało aliasy?

EDIT:
BTW. powinno się pisać FROM `teams`, `players` czy FROM teams, players, bo spotkałem się w kursach z oboma sposobami zapisu, i zastanawiam się który jest poprawny.

Ten post edytował pawel.ad 9.03.2010, 17:00:28
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 16:36