Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Php - Mysql
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 02-04-05, 04:31   #1 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
definizione di varibili in hash

Un saluto a tutti coloro che mi leggono.
Sono un nuovo utente che si è affacciato allo sviluppo web con strumenti Open Source da poco tempo e superati tutti i problemi iniziali (installazioni, configurazioni, etc...) mi si è appena aperta una nuova falla.

In pratica non riesco a capire perchè non posso definire come variabili le informazioni contenute in un hush. Io credo che probabilmente ho qualche modulo disattivato ma non so quale (ammesso sia questo l'errore).
Non credo di sbagliare la stesura dello script anche perchè alcuni provati li ho presi da testi di informatica professionale.

Spero che riuscirò a capirne di più intanto vi saluto ....
linus non in linea   Rispondi citando
Vecchio 02-04-05, 14:50   #2 (permalink)
User Attivo
 
Data di registrazione: Nov 2004
Ubicazione: Catania
Messaggi: 1,142
Invia un messaggio tramite MSN a PaTeR
che intendi? per hashare con md5 è semplice...

$var= md5("hash");
PaTeR non in linea   Rispondi citando
Vecchio 04-04-05, 19:27   #3 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
In pratica se definisco un array nel modo seguente tutto ok

$var=array('mio_nome','mio_cognome','mio_numero');

oppure così:

$var[0]='mio_nome';
$var[1]='mio_cognome';
$var[2]='mio_numero';

Fin qui non credo ci siano grossi problemi; ma nel caso il mio_nome, mio_cognome e mio_numero provengano da un form (html o php) le cose si complicano.
Non riesco a visualizzare a video i parametri immessi nel form, a meno che non uso una espressione foreach().

Di seguito ho inserito le due pagine che mi danno il grattacapo:

<html>
<body> # chiamo il file form.html
<form METHOD=GET action="read_info.php"> # provato diversi method
nome <input type="text" name="nome">



scegli un giorno della settimana
<select name="giorno_settimana[]">
<option>lun
<option>mart
<option>merc
<option>giov
<option>ven
<option>sab
<option>dom
</select>



pagamento

assegno<input type="radio" name="pagamento" value="assegno">
carta di credito<input type="radio" name="pagamento" value="carta">
contanti<input type="radio" name="pagamento" value="contanti" checked>




<input type="submit" value="invio le informazioni">
<input type="reset" value="cancella">
</form>
</body>
</html>

invio del form a read.php

<html>
<body>
<?php
echo"grazie $nome
";
echo"
giorno scelto: ";
if (sizeof($giorno_settimana) >= "1")
{ foreach($giorno_settimana as $valore)
{ echo"
$valore"; }
}
else { echo"Non hai selezionato alcun giorno
"; }

echo"
pagamento con $pagamento
";
?>



************************************

qui sotto estrapolate le informazioni con foreach



<?php
$a=$_REQUEST;

foreach($a as $d => $m)
{
echo"$d: $m
";
}
?>
</body>
</html>

Queste due pagine non servono a gran che. In pratica quando schiaccio il pulsante invio le informazioni mi si apre la finesta come se stessi facendo un download (questo vale solo se uso internet explorer; se uso Mozilla riesco a vedere qualche cosa anche se il risultato non è soddisfacente).
Sulla mia macchina ho istallato php 5. Mi chiedevo se il form funzionerebbe con php 4. Mi sembra un tantino bizzarro retrocedere anche per una semplice prova; non trovate?

Un saluto a tutti.
linus non in linea   Rispondi citando
Vecchio 04-04-05, 19:46   #4 (permalink)
User Attivo
 
Data di registrazione: Nov 2004
Ubicazione: Catania
Messaggi: 1,142
Invia un messaggio tramite MSN a PaTeR
1) non usare request, è facile contraffare le variabili.
2) usa l'array $_POST se invii con il metodo POST, $_GET se usi GET
3)non usare foreach, cosa ti serve prendere???

Quote:
nome <input type="text" name="nome">
lo prendi con

$_POST['nome'] dove nome è il nome del campo del form mandato con POST
PaTeR non in linea   Rispondi citando
Vecchio 05-04-05, 16:35   #5 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
Avevo visto il topic "Problemi con i form", in realtà avevo provato questo tipo di espressione

$_POST['nome'] usando method="POST"

mi dava l'errore e non ho più insistito; poi visto che mi hai dato le indicazioni giuste su quello che devo usare e non devo usare ho riprovato.
L'errore era negli apici, in pratica:

$_POST['nome'] mi da l'errore perchè ci sono gli apici;

$_POST[nome] è giusto.

Adesso ho risolto un grosso problema e te ne sono grato. Spero solo che funzioni anche sul server esterno.

Per me può anche considerarsi chiuso il topic. Grazie.
linus non in linea   Rispondi citando
Vecchio 05-04-05, 16:50   #6 (permalink)
User Attivo
 
Data di registrazione: Nov 2004
Ubicazione: Catania
Messaggi: 1,142
Invia un messaggio tramite MSN a PaTeR
mmm... strano, in quanto gli apici ci dovrebbero essere... che versione di PHP hai?
prova con $HTTP_POST_VARS anzichè $_POST
PaTeR non in linea   Rispondi citando
Vecchio 05-04-05, 16:57   #7 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
La versione installata di php è la 5.0.2 proverò come mi hai detto tu vedo che succede.
linus non in linea   Rispondi citando
Vecchio 05-04-05, 17:03   #8 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
funziona pater

$HTTP_POST_VARS[nome_campo]

e funziona pure il method GET

$HTTP_GET_VARS[nome_campo]


tutto perfetto..s
linus non in linea   Rispondi citando
Vecchio 05-04-05, 17:06   #9 (permalink)
User Attivo
 
Data di registrazione: Nov 2004
Ubicazione: Catania
Messaggi: 1,142
Invia un messaggio tramite MSN a PaTeR
Avrai impostato male il php.ini ( o php.conf )
PaTeR non in linea   Rispondi citando
Vecchio 05-04-05, 17:14   #10 (permalink)
User
 
Data di registrazione: Mar 2005
Messaggi: 503
rispondendo alla domanda iniziale non puoi usare le varibili direttamente ( $variabile ) per una impostazione di sicurezza (penso il safemode)..
riky78 non in linea   Rispondi citando
Vecchio 05-04-05, 17:32   #11 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
Ehi, ma io al safemode ancora ci devo arrivare.
Che cos'è?
linus non in linea   Rispondi citando
Vecchio 05-04-05, 17:33   #12 (permalink)
User Attivo
 
Data di registrazione: Nov 2004
Ubicazione: Catania
Messaggi: 1,142
Invia un messaggio tramite MSN a PaTeR
impostazioni di sicurezza... ma è una cretinata, ti disattiva alcune cose e basta...
PaTeR non in linea   Rispondi citando
Vecchio 05-04-05, 17:52   #13 (permalink)
User
 
L'avatar di linus
 
Data di registrazione: Apr 2005
Ubicazione: Bergamo
Messaggi: 125
Pensando alla sicurezza però

io non escluderei l'uso foreach()

$a=$_POST;
foreach($a as $campo => $variabile)
{
echo "$campo: $variabile
";
}

In pratica le due variabili cambiano sempre, pur restando definite una sola volta. Con questo modo è possibile anche inserire i valori immessi nel form all'interno di una tabella.
linus non in linea   Rispondi citando
Vecchio 05-04-05, 18:29   #14 (permalink)
User
 
Data di registrazione: Mar 2005
Messaggi: 503
Quote:
PaTeR
impostazioni di sicurezza... ma è una cretinata, ti disattiva alcune cose e basta...


non capisco....

cmq, la sicurezza è relativa al fatto di obbligare il programmatore a usare _GET/_POST o HTTP_GET_VARS/HTTP_POST_VARS o _SESSION

senza questa impostazione sarebbe sufficiente andare a mettere nell'url un parametro con il nome di una variabile usata nella pagina (magari una variabile di sessione che si potrebbe sempre utilizzare senza _SESSION) per modificarne il valore...
riky78 non in linea   Rispondi citando
Vecchio 05-04-05, 21:40   #15 (permalink)
User Attivo
 
Data di registrazione: Nov 2004
Ubicazione: Catania
Messaggi: 1,142
Invia un messaggio tramite MSN a PaTeR
Si, ma non è il safemode che fa questo, c'è un'altra direttiva che ora mi sfugge... comunque sconsiglio in ogni caso il _REQUEST
PaTeR non in linea   Rispondi citando
Rispondi
Tags: , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 12:56.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.