Errore PHP

5 contenuti / 0 new
Ultimo contenuto
Errore PHP

Nel mio sito scolastico vorrei pubblicare un elenco dei libri di testo "dinamico", cioè l'utente sceglie unaclasse e gli vengono mostrati i libri di quella classe. Per farlo ho caricato una tabella sul server con tutti i libri, in un database diverso da quello di Drupal (D7).
Ho poi costruito una pagina php che inizia con un form che chiede la classe, memorizzata come sceltaclasse.
Essa è poi passata alla variabile php $scelta con l’istruzione
$scelta = $_POST["sceltaclasse"];
In questo modo vengono mostrate solo le righe riferite a quella classe del piccolo database che ho caricato in MySql.
Ebbene, il tutto funziona, ma in tutte le pagine, compresa l’homepage, prima che il codice venga eseguito (cioè anche se uno non visita la pagina libri di testo) compare il seguente avviso di errore:
Notice: Undefined index: sceltaclasse in eval() (linea 14 di /web/htdocs/www.istitutosantelia.it/home/dr7/modules/php/php.module(80) : eval()'d code).
La riga 14 è appunto quella con l'istruzione citata sopra.
Qualcuno ha idea di come si possa evitare?
Grazie

Drupal Version:

Ciao,
direi che il problema è dovuto al fatto che non esiste $_POST["sceltaclasse"].

Prova a mettere il codice che hai scritto in un if:

<?php if (isset($_POST["sceltaclasse"])) {
 
$scelta = $_POST["sceltaclasse"];
  [...]
}
?>

Ciao
Ioris

Ha funzionato, grazie infinite!
Pier

Ma perché mettere un DB esterno a Drupal quando potevi creare un tipo di contenuto "libro" e fare tutto in drupal ?

M.

--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal

Ho bisogno anch'io dello stesso suggerimento da paret di Ioris. Io non so come modificare il mio listato che mi dà lo stesso errore segnalato.
La parte che non va è questa: fputs($fp, "GET " . $rdf['path'] . "?" . $rdf['query'] . " HTTP/1.0\r\n"); e l'errore questo: Notice: Undefined index: query in eval() (linea 7 di /home1/associb8/public_html/portale/modules/php/php.module(80) : eval()'d code).
Si tratta di un breve blocco in php per la lettura di file rss o simili.
Grazie
Umberto