php / sql - dubbi e domande varie...
Moderatore: Staff
Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- puzuma
- Linux 2.x

- Messaggi: 482
- Iscritto il: mar 4 lug 2006, 17:14
- Nome Cognome: Stefano Salvador
- Slackware: current
- Kernel: 2.6.32.2
- Desktop: KDE 4.4.0
- Località: Udine
- Contatta:
Re: php / sql - dubbi e domande varie...
javascript.
ci sono varie librerie che ti consentono di farlo con molta facilità e possono essere integrate nel sito in modo che chi noa ha javascript possa navigare ugualmente.
in particolare loro hanno usato mootols, molto efficiente e leggera (e per di più scritta da italiani). puoi cercare anche prototype e script.aculo.us, per vedere cosa si può fare da un occhiata a www.scripteka.com
ci sono varie librerie che ti consentono di farlo con molta facilità e possono essere integrate nel sito in modo che chi noa ha javascript possa navigare ugualmente.
in particolare loro hanno usato mootols, molto efficiente e leggera (e per di più scritta da italiani). puoi cercare anche prototype e script.aculo.us, per vedere cosa si può fare da un occhiata a www.scripteka.com
The quiet ones are the ones who change the world. The loud ones only take the credit.
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
grazie della risposta puzuma, ma js non mi interessa al momento e quindi per ora desisto su questo aspetto puramente "eye candy"... 
per quanto riguarda la domanda relativa alle immagini e alle thumbnails?? niente consigli in merito??
Grazie a tutti
...
per quanto riguarda la domanda relativa alle immagini e alle thumbnails?? niente consigli in merito??
Grazie a tutti
- aschenaz
- Staff

- Messaggi: 4623
- Iscritto il: mer 28 lug 2004, 0:00
- Nome Cognome: Nino
- Slackware: current
- Kernel: 5.4.x
- Desktop: KDE
- Località: Reggio Calabria
- Contatta:
Re: php / sql - dubbi e domande varie...
Io ho adottato il primo metodo, ovvero la thumbnail che si crea ad ogni uploaddanix85 ha scritto:... io pensavo ad una doppia colonna di thumbnails (150 px come width o height massimo) con sotto il nome del file o del soggetto della foto... che ne dite?? in alternativa mi indicate qualche sito che potrei prendere come spunto per "disegnare" una galleria d'immagini particolare?? Inoltre vorrei mettere una thumbnail dinamica che casualmente presenta un'immagine presente nel database, quest'ultima anche più piccola di 150px sul lato più lungo, direi 100 va più che bene... Per fare tutto questo dite di creare delle thumb da caricare parallelamente alle immagini originali o faccio gestire il ridimensionamento a php ad ogni richiesta della pagina??
Nel caso della seconda ipotesi non avrò grossi rallentamenti in risposta ad ogni richiesta dal momento che con questa soluzione tutto il lavoro è svolto lato server?? Ovviamente con l'altra soluzione occuperei un sacco di spazio inutile per le varie immagini ridotte...
di immagine (vedi la funzione che ti ho postato sopra...). Poi, in qualche caso
ho adottato il sistema di visualizzare tutte le miniature (cliccando sulle quali
si viene linkati ad una specie di slideshow in php realizzato alla buona) e, in
altri casi, invece, ne faccio visualizzare solo qualcuna in random (con il link
allo stesso sistema di slideshow di prima).
Secondo me non conviene ridimensionare con i parametri html (anche se
riduci le dimensioni a video, il peso dell'immagine rimane tale e quale) e
nemmeno far ridimensionare a php di volta in volta (spreco di risorse, come
giustamente dici tu stesso...).
Ciao,
nino
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
rieccomi...
un dubbio che è un po' ot, ma nemmeno troppo... non riesco a stilizzare una textarea, come mai??
l'html in questione è il seguente:
il tutto ovviamente si trova dentro i tag <form></form>...
il css relativo a quest'area di testo è:
al momento width e height sono commentati per capire dove fosse il problema, ma non ne vengo a capo... non riesco a fargli prendere le dimensioni con rows e cols, non riesco a fargli prendere l'overflow tramite il css e se premo il tasto enter invece di mandarmi a capo il testo è come se cliccassi sul bottone submit... qualcuno mi sa spiegare cosa sto sbagliando??
Grazie mille a tutti...
un dubbio che è un po' ot, ma nemmeno troppo... non riesco a stilizzare una textarea, come mai??
l'html in questione è il seguente:
Codice: Seleziona tutto
<p><label for="message">il tuo messaggio</label><br /><input type="textarea" cols="50" rows="12" class="inputarea_mail_text" name="message" /></p>il css relativo a quest'area di testo è:
Codice: Seleziona tutto
.inputarea_mail_text {
padding:5px;
/* width:85%;
height:250px; */
color:#fff;
background-color:#73aeff;
overflow:auto;
}
Grazie mille a tutti...
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Perché non esiste quel tag.
Il tag input non ha textarea come valore di type
Textarea si usa così:
Il tag input non ha textarea come valore di type
Textarea si usa così:
Codice: Seleziona tutto
<textarea rows="12" cols="50">
Qui metti il testo
</textarea>- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
grazie conraid... 
stavo per postare per dire che avevo risolto quando ho visto la tua risposta...
ciau...
stavo per postare per dire che avevo risolto quando ho visto la tua risposta...
ciau...
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
ritornando IT...
in un if, posso verificare la consistenza di più variabili contemporaneamente??
mi spiego meglio, ho questa situazione:
di queste 3 variabili solo $padre e $figlio voglio che non siano vuote, posso fare questo controllo in un unico if?? che so, una cosa tipo:
grazie mille...
in un if, posso verificare la consistenza di più variabili contemporaneamente??
mi spiego meglio, ho questa situazione:
Codice: Seleziona tutto
$madre = $_POST["mom"];
$padre = $_POST["dad"];
$figlio = $_POST["son"];
Codice: Seleziona tutto
if($padre, $figlio == "") {
qualcosa;
}- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: php / sql - dubbi e domande varie...
Innanzi tutto dovresti verificare che la variabile globale $_POST contenga effettivamente quelle chiavi prima di leggerle, altrimenti ti darà un errore in caso le chiavi non esistono....ma non ho letto tutto il thread quindi forse il controllo non è necessario.
Per l'if invece, dovresti usare l'or, tipo:Che, letteralmente sta per:" Se padre è vuoto, oppure figlio è vuoto, allora fai qualcosa".
Spina
Per l'if invece, dovresti usare l'or, tipo:
Codice: Seleziona tutto
if ( $padre == "" || $figlio == "" )
{
qualcosa;
}Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
ciao spina,
$_POST contiene le variabili in questione, non lo trovi nei post precedenti perchè in questo thread ho affrontato vari problemi/dubbi man mano che li incontravo...
Grazie del suggerimento, mi hai tolto il dubbio...
Ciau
$_POST contiene le variabili in questione, non lo trovi nei post precedenti perchè in questo thread ho affrontato vari problemi/dubbi man mano che li incontravo...
Grazie del suggerimento, mi hai tolto il dubbio...
Ciau
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
ragazzi, ho scritto un semplice form di contatto, i dati da immettere sono:
Nome, Indirizzo, Città, Email, Oggetto, Testo del messaggio... I primi 4 sono campi di testo normali, il quinto è un select con vari oggetti preimpostati e poi c'è la casella di testo...
I dati obbligatori sono Nome, Email, Oggetto e Testo...
Adesso sto scrivendo il codice che si deve occupare di raccogliere i dati, ma mi è venuto un dubbio, in caso di campo obbligatorio vuoto sono indeciso se mostrare l'errore nella pagina del form o nella pagina che uso di solito per segnalare gli errori (ad esempio in caso di login errato)...
Nel primo caso potrei mettere un refresh dinamico in caso di errore e ricaricare la pagina con il form pulito, mentre nel secondo ho il problema che ho impostato il redirect dopo 5 secondi verso la homepage in caso venga mostrata la pagina di errore, quindi se uno non scrive il nome (e.g.) viene rediretto in homepage con conseguente difficoltà nel tornare sulla pagina di contatto e riscrivere tutto... visto così la risposta più ovvia è la prima, ovvero mostrare l'errore nella pagina del form, però non sono proprio troppo sicuro di sapere come fare... avevo pensato di evidenziare in qualche modo l'area attorno al campo che non è stato riempito, magari inserendo l'<input> in un <p>, ma come faccio tramite php a dargli uno stile diverso nel caso in cui sia stato lasciato vuoto?? ma sopratutto, c'è un modo per mantenere il testo all'interno dei campi che sono stati già riempiti??
Spero di non aver messo troppa carne al fuoco, grazie mille a tutti per l'aiuto...
Nome, Indirizzo, Città, Email, Oggetto, Testo del messaggio... I primi 4 sono campi di testo normali, il quinto è un select con vari oggetti preimpostati e poi c'è la casella di testo...
I dati obbligatori sono Nome, Email, Oggetto e Testo...
Adesso sto scrivendo il codice che si deve occupare di raccogliere i dati, ma mi è venuto un dubbio, in caso di campo obbligatorio vuoto sono indeciso se mostrare l'errore nella pagina del form o nella pagina che uso di solito per segnalare gli errori (ad esempio in caso di login errato)...
Nel primo caso potrei mettere un refresh dinamico in caso di errore e ricaricare la pagina con il form pulito, mentre nel secondo ho il problema che ho impostato il redirect dopo 5 secondi verso la homepage in caso venga mostrata la pagina di errore, quindi se uno non scrive il nome (e.g.) viene rediretto in homepage con conseguente difficoltà nel tornare sulla pagina di contatto e riscrivere tutto... visto così la risposta più ovvia è la prima, ovvero mostrare l'errore nella pagina del form, però non sono proprio troppo sicuro di sapere come fare... avevo pensato di evidenziare in qualche modo l'area attorno al campo che non è stato riempito, magari inserendo l'<input> in un <p>, ma come faccio tramite php a dargli uno stile diverso nel caso in cui sia stato lasciato vuoto?? ma sopratutto, c'è un modo per mantenere il testo all'interno dei campi che sono stati già riempiti??
Spero di non aver messo troppa carne al fuoco, grazie mille a tutti per l'aiuto...
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: php / sql - dubbi e domande varie...
Bhé, con il php puoi scrivere la pagina risultante, quindi, nessuno ti impedisce di fare una cosa del genere:
Per quanto riguarda la seconda domanda, gli input di tipo text hanno il campo value, che, se settato, ti mostrano nell'area il suo valore. Quindi
crea un campo testo con all'interno la scritta "casa".
Stesso discorso vale per le select.
Scusa il pessimo linguaggio,
Spina
Codice: Seleziona tutto
( condizione ) ? print 'style="stile1"' : print 'style="stile2"';Codice: Seleziona tutto
<INPUT type="text" nome="la_mia_casa" value="casa">Stesso discorso vale per le select.
Scusa il pessimo linguaggio,
Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- aschenaz
- Staff

- Messaggi: 4623
- Iscritto il: mer 28 lug 2004, 0:00
- Nome Cognome: Nino
- Slackware: current
- Kernel: 5.4.x
- Desktop: KDE
- Località: Reggio Calabria
- Contatta:
Re: php / sql - dubbi e domande varie...
Forse può esserti utile una porzione di codice che avevo scritto tempo fa:
Nello script di raccolta. c'è questo codice:
In questo modo, se qualche campo obbligatorio non è stato compilato, i
valori degli altri campi vengono ripassati con la querystring al form iniziale,
dove i campi vuoti vengono evidenziati.
Sta a te distinguere in qualche modo i campi obbligatori dagli altri...
Codice: Seleziona tutto
<form method="post" action="raccoltadati.php">
<fieldset>
<fieldset>
<legend>dati del server</legend>
<label class="classeoriginaria<?php if(isset($_REQUEST["messaggio"]) && $_REQUEST["field0"]=="") echo " evidente" ?>" for="field0">
Inserisci l'i.p. e l'eventuale sottocartella del sito*<br />(es. 26.xxx.xxx.xxx/isis):
</label>
<input class="campi" type="text" size="45" name="field0" id="field0" value="<?php if(isset($_REQUEST["field0"])) echo $_REQUEST["field0"] ?>" />
<br class="cl" />
</fieldset>
<fieldset>
<legend>dati dell'ufficio</legend>
<label class="classeoriginaria<?php if(isset($_REQUEST["messaggio"]) && $_REQUEST["field1"]=="") echo " evidente" ?>" for="field1">
Inserisci il nome completo dell'ufficio*<br />(es. Ufficio locale di Wxyz):
</label>
<input class="campi" type="text" size="45" name="field1" id="field1" value="<?php if(isset($_REQUEST["field1"])) echo $_REQUEST["field1"] ?>" />
<br class="cl" />...Codice: Seleziona tutto
<?php
$unfilled=0;
$field=array();
for($i=0;$i<11;$i++) { // nel mio caso i campi sono 10...
$field[$i]=$_REQUEST["field".$i];
if(trim($_REQUEST["field".$i])=="") $unfilled=1;
}
if($unfilled) {
$loc="Location: isisconfig.php?messaggio=1";
foreach($field as $key=>$val) $loc.="&field{$key}=$val";
header($loc);
exit();
}valori degli altri campi vengono ripassati con la querystring al form iniziale,
dove i campi vuoti vengono evidenziati.
Sta a te distinguere in qualche modo i campi obbligatori dagli altri...
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: php / sql - dubbi e domande varie...
sarà il caldo ma non ci ho capito troppo di nessuno dei 2 interventi... 
non linciatemi subito, stasera (quando farà un po' più fresco) proverò a capire qualcosina in più, altrimenti posterò in cerca di ulteriori chiarimenti...
grazie ad entrambi per l'aiuto (anche se ancora non l'ho colto, ma è colpa mia...)
non linciatemi subito, stasera (quando farà un po' più fresco) proverò a capire qualcosina in più, altrimenti posterò in cerca di ulteriori chiarimenti...
grazie ad entrambi per l'aiuto (anche se ancora non l'ho colto, ma è colpa mia...)
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: php / sql - dubbi e domande varie...
Allora forse non ho capito bene le domande 
Spina
Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- aschenaz
- Staff

- Messaggi: 4623
- Iscritto il: mer 28 lug 2004, 0:00
- Nome Cognome: Nino
- Slackware: current
- Kernel: 5.4.x
- Desktop: KDE
- Località: Reggio Calabria
- Contatta:
Re: php / sql - dubbi e domande varie...
Per quanto riguarda me, è colpa mia perché ho fatto un copia-incolla un po'
frettoloso.
Le parti che ti possono interessare sono queste:
Che significa: l'etichetta del campo ha uno stile predefinito dalla classe
"classeoriginaria"; ma, se nella querystring della pagina c'è un campo
"messaggio" e se (sempre nella querystring) il campo in questione è vuoto,
allora aggiungi allo stile la classe "evidente" (che evidenzia in qualche modo
l'etichetta).
Naturalmente, io ho applicato lo stile alla label, ma tu puoi applicarlo
benissimo all'input, se preferisci...
Poi...
Cioè: se nella querystring è presente quel campo, mettine il valore nel
value dell'input...
A questo punto, lo script di raccolta te lo modifico così:
Ciao,
nino
frettoloso.
Le parti che ti possono interessare sono queste:
Codice: Seleziona tutto
<label class="classeoriginaria<?php if(isset($_REQUEST["messaggio"]) && $_REQUEST["nomecampo"]=="") echo " evidente" ?>" for="nomecampo">"classeoriginaria"; ma, se nella querystring della pagina c'è un campo
"messaggio" e se (sempre nella querystring) il campo in questione è vuoto,
allora aggiungi allo stile la classe "evidente" (che evidenzia in qualche modo
l'etichetta).
Naturalmente, io ho applicato lo stile alla label, ma tu puoi applicarlo
benissimo all'input, se preferisci...
Poi...
Codice: Seleziona tutto
<input class="campi" type="text" size="45" name="nomecampo" id="nomecampo" value="<?php if(isset($_REQUEST["nomecampo"])) echo $_REQUEST["nomecampo"] ?>" />value dell'input...
A questo punto, lo script di raccolta te lo modifico così:
Codice: Seleziona tutto
// inizializzo una variabile booleana
$campiobbligatoriomessi=0;
// inizializzo un array per i campi da ripassare nella querystring
$campidaripassare=array();
// aggiungo una voce all'array con il valore del primo campo
$campidaripassare[]=$_REQUEST["nomecampo"];
// se il campo è omesso, setto a 1 (vero) la variabile booleana
if(trim($_REQUEST["nomecampo")=="") $campiobbligatoriomessi=1;
// e continuo così per gli altri campi (io avevo risolto con un costrutto
// for perché il nome dei campi era sempre uguale con indici numerici...)
//
// A questo punto controllo se la variabile $campiobbligatoriomessi è vera
// e, se lo è, torno al form ripassando un messaggio e tutti i campi
// compilati (inseriti nella querystring con il foreach)
if($campiobbligatoriomessi) {
$loc="Location: nomepaginaform.php?messaggio=campi-obbligatori-omessi";
foreach($campidaripassare as $key=>$val) $loc.="&$key=$val";
header($loc);
exit();
}
nino