Pagina 1 di 1

[PHP-MYSQL]

Inviato: venerdì 22 febbraio 2008, 9:44
da brozz87
Gente avrei una domanda da porgere.
Ho una tabella in mysqli:

questa tabella è cosi composta

id, id_sezione, titolo, url, value.

In poche parole contiene l id della sezione e tutte le immagini che l'utente associa alla sezione stessa.
Nell'interrogazione se vado a svolgere la query:

SELECT * FROM tabella WHERE id_sezione='id_sezione_che_mi_serve' --- >
lui mi estrae sempre E SOLO l'ultimo id inserito. Non c'è qualcosa che mi permetta di estrarre sempre tutti i record avente id_sezione = all'id della sezione che mi interessa cosi da fare una stampa a ciclo poi?

Lo scopo è quello poi di stampare due stringe del campo (INT) value, che sarebbero 0 e 1.

if(value == 1) stampa questo
if (value ==) stampa ANCHE  quest'altro

idee?
Grazie  >:(

Re: [PHP-MYSQL]

Inviato: venerdì 22 febbraio 2008, 10:17
da Adaron
scusa ma non si è capito bene cosa vuoi fare. Magari posta anche 2 o 3 valori tipo della tabella così sappiamo su cosa lavorare

Re: [PHP-MYSQL]

Inviato: venerdì 22 febbraio 2008, 11:12
da Besshell
Per quanto riguarda l'estrazione dei dati dal database:

Codice: Seleziona tutto

$results=mysql_query("SELECT * FROM tabella WHERE id_sezione='id_sezione_che_mi_serve'");

while($dati=mysql_fetch_array($results)){
       // qui puoi accedere ad ogni record registrato nel database selezionato con la query precedente
       // i dati saranno accessibili come si fa con gli array: $dati['nome_colonna']
}
Applichi questo costrutto per estrarre i dati?

Re: [PHP-MYSQL]

Inviato: venerdì 22 febbraio 2008, 17:14
da brozz87
ciao,
grazie per le risposte.

per estrarre i dati uso select * from tabella, l'interrogazione piu classica di sql.
però se io ho una tabella con due valori aventi lo stesso id, lui non mi estrae entrambi i valori.
è cio che voglio fare.

estrarre N valori aventi id uguale (l id non è autoincrement, ma deriva da un'altra tabella)

Re: [PHP-MYSQL]

Inviato: venerdì 22 febbraio 2008, 22:41
da Besshell
Con quella query estrai tutti i record della tabella che soddisfano una condizione data.
Se non dai una condizione estrae tutti i record.
Considerando adesso una tabella del tipo:

##id####val1####val2##
##1####8858####4589##


Dove val1 e val2 corrispondono ai nomi delle colonne dei rispettivi valori di ogni record, scrivendo il seguente codice si ottiene la stampa dei valori di ogni record(riga).

Codice: Seleziona tutto

$results=mysql_query("SELECT * FROM tabella");

while($dati=mysql_fetch_array($results)){
  echo $dati['val1'];
  echo $dati['val2'];     
}

Re: [PHP-MYSQL]

Inviato: martedì 26 febbraio 2008, 16:48
da banjoo
Segui quello che dice Besshell, ha ragione. Quando fai un'interrogazione al database in risultato della query finisce in una variabile ( ad es. $result).
A questo punto TUTTI i dati risultanti dalla query sono contenuti in $result. L'operazione successiva è trasformare le informazioni in un array, quindi:

$dati=mysql_fetch_array($result);

ora i dati sono in $dati come array. Per estrarli:

echo $dati['colonna1'];
echo $dati['colonna2'];
....
....

mettendo tutto in un ciclo while la stampa avverrà fino a che la tabella avrà righe (quindi tutta la tabella).

Ciao