|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Apr 2009
Messaggi: 50
|
[Shell]Gestione database e pagina HTML
ciao a tutti,
sto costruendo un CGI che mi crea dinamicamente una pagina web gestita dinamicamente con un shell script bash. La pagina HTML serve per immettere, rimuovere, visualizzare delle righe richieste presenti nel database, e a runtime queste modifiche vengono portate anche nella pagina HTML. Il problema è che nonostante i comandi sono ,almeno in parte giusti, eseguendoli dalla pagina web questa non me li esegue. Per esempio ho questa funzione che deve salvare nel database un testo inserito nel corpo della textarea: Codice:
....
<textarea name="Inserimento" cols='50' rows='10'></textarea><br>
<input type="button" value="Aggiungi" onclick=\"addPost(text)\"/>
....
addPost(text){
echo "$(date +%s) "-" $text" >> /.../cgi-bin/database
//questo comando lanciato da terminale funziona correttamente
//ma lanciato come funzione dalla pagina html non va
}
Se qualcuno potesse aiutarmi ne sarei felice ho provato anche a saltare la funzione in questo modo Codice:
<textarea cols='50' rows='10'></textarea><br> <input type="button" value="Aggiungi" onclick=\"echo "$(date +%s) "-" $text" >> /var/www/postit/cgi-bin/database \"/> Ultima modifica di tookie : 22-06-2009 alle 15:10. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Come pensi che sia possibile che ti possa eseguire una procedura bash direttamente dal codice HTML ?
Devi gestire il passaggio di parametri tramite l'interfaccia CGI, con il metodo GET o con il metodo POST. Devi sicuramente passare da una form. La form avrà come action l'url dello script bash e passerà i parametri allo script bash al momento in cui schiaccerai il bottone di submit. http://www.icosaedro.it/apache/cgi-bash.html |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Apr 2009
Messaggi: 50
|
e se invece dovessi modificare una select html aggiungendo e rimuovendo option, come mi consigli di fare?anche questo è possibile farlo attraverso get e/o post?
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Apr 2009
Messaggi: 50
|
mettendo che con javascript non lo posso fare, con get e post come faccio a dirgli quanti campi option deve aggiungere e ,ad esempio, data la riga 5 nel db che quella debba andare al 5° posto?
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sei te che devi dare in output il codice HTML per generare la pagina, sarai quindi tu a decidere la posizione in cui mettere le varie option.
|
|
|
|
|
|
#7 |
|
Member
Iscritto dal: Apr 2009
Messaggi: 50
|
da quel che ho capito avvio la pagina, scrivo qualcosa nella textarea, tramite la form passa il contenuto della textarea a uno script esterno che salva tutto nel database, e fin qua ci siamo.
Il passo successivo sarebbe di prendere la QUERY_STRING, chiaramente formattarla nel modo corretto, far aggiungere una option inizialmente vuota e riempirla col contenuto della stringa. Quindi qualcosa del tipo: Codice:
... query=$(printf "$QUERY_STRING" | head -n1 | cut -d "=" -f2 ) ... echo "<html>.... ... ... </html>" |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
|
|
#9 |
|
Member
Iscritto dal: Apr 2009
Messaggi: 50
|
e non ce nessun altro modo per farlo dinamicamente senza che mi debba scrivere tutte le possibili combinazioni delle pagine?
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Non capisco perché tu ti debba scrivere tutte le possibili pagina. Mi immagino che tu le possa generare dinamicamente in base alla query string. |
|
|
|
|
|
|
#11 |
|
Member
Iscritto dal: Apr 2009
Messaggi: 50
|
si so che con javascript mi complico molto di meno la vita, e l'ho anche già fatto, il problema è dato dal fatto che questo è un esercizio didattico che mi chiede che sia fatto tutto con linguaggio shell...
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Il fatto che comunque tu usi JavaScript non implica direttamente il non usare la Shell. Generi comunque una pagina web e JavaScript fa parte delle pagine web. Anzi, è molto interessante il fatto di generare codice JavaScript dinamico, che magari cambia quando la pagina viene ricaricata. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:58.




















