|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Torino
Messaggi: 1875
|
Controllo esistenza colonna di un record in un database Access da PHP con ADO
Ho un database MS Access che leggo con PHP con connessione ADO. Ho scritto una funziona che mi ritorna in maniera formattata HTML tutti i record di una generica tabella. Passo query ed elenco campi (quest'ultimo viene usato per creare l'intestazione della tabella) come parametri alla funzione.
Il codice è il seguente: Codice PHP:
Come faccio a controllare l'esistenza di una certa colonna? Avevo provato con la funzione array_key_exists() Codice PHP:
Qualcuno sa come fare? Ultima modifica di eureka63 : 10-09-2007 alle 14:50. |
|
|
|
|
|
#2 |
|
Bannato
Iscritto dal: Sep 2007
Messaggi: 39
|
Cosi dovresti riuscire a leggere le informazioni che ti servono
Codice:
$query = "SELECT * FROM Employee LIMIT 1";
$result = mysql_query($query);
$fields = mysql_num_fields($result);
for($count=0;$count<$fields;$count++) {
$field = mysql_fetch_field($result,$count);
echo "<p>$field->name $field->type ($field->max_length)</p>";
}
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Torino
Messaggi: 1875
|
Hum, io sto usando Access e non MySQL e la lista dei possibili campi la passo già come parametro. Vorrei che, se un campo non esiste, venga saltato.
|
|
|
|
|
|
#4 |
|
Bannato
Iscritto dal: Sep 2007
Messaggi: 39
|
Presumo che tu faccia una query usando quella lista di campi, quindi se uno dei campi non c'è dovrebbe darti errore l'esecuzione della query...o sbaglio?
|
|
|
|
|
|
#5 | ||
|
Senior Member
Iscritto dal: Nov 2005
Città: Torino
Messaggi: 1875
|
Quote:
Quote:
Ultima modifica di eureka63 : 10-09-2007 alle 15:12. |
||
|
|
|
|
|
#6 |
|
Bannato
Iscritto dal: Sep 2007
Messaggi: 39
|
Ma l'errore te lo da in fase di esecuzione della query o quando incominci a stamparti i campi, se te lo da nel secondo caso potresti racchiudere l'istruzione in un try...catch e risolvi.
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: Torino
Messaggi: 1875
|
Quote:
Non ho mai usato try and catch. Ci proverò se non trovo come far funzionare la array_key_exists() che in teoria dovrebbe servire proprio a questo scopo (se non ho capito male). |
|
|
|
|
|
|
#8 |
|
Bannato
Iscritto dal: Sep 2007
Messaggi: 39
|
Come ti dicevo, visto che il problema te lo da in fase di esecuzione della query, non puoi usare il try...catch e nemmeno altre istruzioni php perchè è ado che ti da l'errore, dovresti cercare a questo punto di intervenire sulla lista di campi che passi in modo da passarglieli correti.
|
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: Torino
Messaggi: 1875
|
Quote:
|
|
|
|
|
|
|
#10 |
|
Bannato
Iscritto dal: Sep 2007
Messaggi: 39
|
In alternativa puoi fare sempre una select * poi farti restituire i nomi dei campi e cilcando li confronti con quelli della tua lista e stampi solo quelli che ti interessano, però creado che eseguire precisamente la queri corretta sia la soluzione migliore.
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:21.



















