Newsgroup: it.comp.www.php
Titolo: Come faccio visualizzare il valore di un campo?

Salve,
ho la necessità di fare visualizzare un valore che andrò ad inserire volta
per volta in una pagina html.
La situazione è la seguente:
ho una tabella orders( orders_id(autoincrement), fatture_id(int,11,not null)
,ecc...) .
dovrei fare stamparee a video il valore del campo fatture_id ho provato con
le seguenti stringhe senza successo:
$fatture_query = tep_db_query("select fatture_id from " . TABLE_ORDERS . "
where fatture_id = orders_id");
$fID = tep_db_fetch_array($fatture_query);
per mostrare uso:
echo $fID['fatture_id'];
il risultato è che mi visualizza sempre lo stesso numero.
non so dove sia il problema...
grazie a tutti

 il risultato è che mi visualizza sempre lo stesso numero.
Forse perchè esiste un solo record che abbia order_id = fatture_id.
Comunque non mi è ben chiaro che cosa vuoi fare, soprattutto il significato
della query.
Ah, "fattura" si dice invoice.  :-)
Ciao
Marco

 ha scritto nel messaggio
news:bmjp3k$2kc2$1...@news6.isdnet.net...
hai perfettmante ragione...non ero chiaro....
quindi:
nella tabella orders ho i seguenti campi:
orders_id  int(11)No
customers_id  int(11)No  0
customers_name  varchar(64)No
customers_company  varchar(32)Si  NULL
customers_street_address  varchar(64)No
customers_suburb  varchar(32)Si  NULL
ecc...ecc...
io ad ogni ordine devo poter associare il numero della fattura(invoice),
quindi ho inserito un nuovo campo chiamato invoice_id a cui manualmente (via
mysql) inserirò il numero della fattura.Tale campo non deve autoincrement
inquanto voglio gestirlo io stesso.
che cosa devo scrivere(nel file che mi genera la fattura) per richiamare
questo valore?
io ho pravato con questo:
$invoices_query = tep_db_query("select invoices_id from " . TABLE_ORDERS . "
where invoices_id = orders_id");
$fID = tep_db_fetch_array($invoices_query);
per mostrare uso:
echo $fID['invoices_id'];
ma credo che l'errore sia a questo punto sul invoices_id = orders_id...che
condizione where dovrei scrivere affinchè mi venga stampato nell'ordine x
l'invoice_id y?
Spero di  aver meglio esposto il problema...
Grazie

 questo valore?
SELECT *
FROM table_orders
WHERE orders_id=$id
In questo modo recuperi tutti i dati dell'ordine il cui numero
identificativo è dato da $id.
Il numero della fattura corrispondente è uno dei campi restituiti dalla
query.
Ti fai il tuo fetch_array() e poi lo recuperi come hai scritto.
Chiaramente $id dovrà avere un valore che gli darai in un qualche modo.
Ciao
Marco

hai perfettamente ragione!
il problema era nel where appena ho messo orders_id=$oID ha subito
funzionato tutto.
Ora vorrei inserire in una pagina web un form che mi permetta di cambiare
dato un orders_id il corrispettivo valore di invoice_id .
il codice dovrebbe essere di sto tipo
tep_db_query("insert into " . ORDERS . " (orders_id, orders_status_id,
date_added, customer_notified, comments) values ('" . (int)$oID . "', '" .
tep_db_input($status) . "', now(), '" . tep_db_input($customer_notified) .
"', '" . tep_db_input($comments)  . "')");

 "', '" . tep_db_input($comments)  . "')");
No.
Se vuoi modificare un record devi fare una query di UPDATE non INSERT.
E poi $oID è numerico. Se anche orders_id è numerico (come spero) non lo
devi inserire così nella query.
Ciao
Marco