Newsgroup: it.comp.www.php
Titolo: join

ho 4 tabelle:
 - film (id, tit_ital, tit_orig, paese, genere, anno, voto, id_reg,
id_att1, id_att2, id_att3)
 - recensioni (id_rec, recensione, id_film)
 - attori (id_att, nome, cognome)
 - regia (id_reg, nome, cognome)
e devo eseguire la seguente query per visualizzare in una pagina la
scheda di un film (scelto con un form!):
$query = "SELECT * FROM film, recensioni WHERE 
film.id
=$_GET[id] and
film.id
=recensioni.id_film";
dato che il risultato viene memorizzato con
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
come faccio a fargli stampare i campi che mi interessano?!? ho provato
cosě, ma mi da come errore
Parse error :  parse error, expecting `']'' on line2  :
echo "<br><b>$row[film.tit_ital]</b>";
if ($row[tit_orig] != "") {
echo " / <b>$row[film.tit_orig]</b>";
}
echo "<br>$row[film.genere]" . " - $row[film.paese]" . "
$row[film.anno]<br><br><br>";
echo "<b>Recensione:</b><br> $row[recensioni.recensione]<br><br>";
echo "<em><u>Voto della critica:</em></u> $row[voto]<br><br><br>";
grazie
michela

Mon, 06 Sep 2004 09:56:40 GMT, 
m.a...@libero.it
 (m.atta) ha detto:

Se ogni tanto mettessi fra gli apici o virgolette gli argomenti degli
array...
Ciao
Francesco Mazzi
Webmaster di AltroPC.it - 
http://www.altropc.it
 
Project Admin di "PHP Reservation - Online booking system" - 
http://phpreservation.sourceforge.net
Dev.Staff di E-Xoopport - 
http://dev.e-xoopport.it

 Ciao
ci avevo già pensato.... se metto gli apici o le virgolette (che poi non
ho ancora capito in base a cosa usare uno piuttosto che l'altro...) mi
da errore:
Parse error :  parse error, expecting `T_STRING' or `T_VARIABLE' or
`T_NUM_STRING' on line 2
?!?!?  =(
al momento la query viene presa giusta, ma l'array $row risulta essere
vuoto, per quello non mi da i risultati!!  =(  sbaglio a passargli gli
argomenti?
michela

Mon, 06 Sep 2004 10:21:00 GMT, 
m.a...@libero.it
 (m.atta) ha detto:

Un'altra cosa che mi ero dimenticato: scrivi anzi
echo "<br><b>".$row["film.tit_ital"]."</b>";
cioé non immergere variabili nelle stringhe, forse è questo l'errore.


 cioé non immergere variabili nelle stringhe, forse è questo l'errore.
niente da fare, la variabile $row continua a rimanere vuota.....  =(
ma ho sbagliato io a scrivere il codice? la sintassi per inserire in un
array il risultato di un join è diversa da quella per inserire in un
array il risultato di una query su singola tabella?  ?=(
michela

> echo "<br><b>".$row["film.tit_ital"]."</b>";
risolto!!! era un banale problema nei dati del db!! 
cmq il codice mi funziona scrivendo semplicemente $row[tit_ital]  (->
senza apici, virgolette, nè specifica della tabella film!)... è strano?
michela

 ha scritto nel messaggio
news:1gjownv.ynnoic11sk64gN%m.a...@libero.it...

Visto che alla fine hai solo un record e pochi campi  puoi usare
mysql_result();
$titolo_orig=stripslashes(mysql_result($result,0,'tit_orig'));
Ma poi con print_r($row) cosa ti da?
CIAO

array il risultato di una query su singola tabella?  ?=(
Scusa ma hai provato una query di prova a vedere se ti restituisce
qualcosa? Abilita l'error reporting su all per vedere se c'è qualcosa
di strano. 
Io di join nella tua query non ne vedo, e comunque la sintassi è
sempre la solita.


Mon, 06 Sep 2004 10:41:56 GMT, 
m.a...@libero.it
 (m.atta) ha detto:

Non è strano, perà prova ad impostare l'error reporting su all e vedi
che ti dice! Maggiori info:
http://www.php.net/manual/it/language.types.array.php#language.types.array.donts
Ciao
