Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Variabile

  1. #1
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697

    Variabile

    Non riesco a venirne fuori, sto tentando di mettere un SESSION START ad una variabile (nome) in modo che se inviando il form esce un'alert i dati del form non vengono persi.

    Ho fatto così, non escono errori ma il form non mantiene i dati:

    nel form ho messo

    <td><font size="2">NOME:</font><font size="2" color="red">*</font></td>
    <td><input name="nome" value= <? echo "$nome" ?>; <size="30" type="text" maxlength="30" style="border:1px solid"onblur="this.value=this.value.replace(/^\s*/,'')"</td>


    e nel file successivo,<ins.php ho messo questo codice.

    $_SESSION['nome'] = $_POST['nome'];

  2. #2
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Hai verificato che il valore di $_POST['nome'] venga settato correttamente? poi non vedo i tag <form>...li hai messi? se si postali che vediamo se l'errore è li...

  3. #3
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Il_Drugo
    Hai verificato che il valore di $_POST['nome'] venga settato correttamente? poi non vedo i tag <form>...li hai messi? se si postali che vediamo se l'errore è li...
    Questo è tutto il form, in rosso ho fatto una modifica

    <form method="POST" action="ins.php" name="mioform" onSubmit="return controlla()">


    <tr>
    <td><font size="2">NOME:</font><font size="2" color="red">*</font>
    </td>
    <td><input name="nome" value="<? echo $_SESSION['nome'];?>" size="30" type="text" maxlength="30" style="border:1px solid"
    onblur="this.value=this.value.replace(/^\s*/,'')"</td>
    </tr>
    <tr>
    <td><font size="2">EMAIL:<font color="#008080"></font></td>
    <td><input name="email" size="30" type="text" maxlength="30" onBlur="this.value=ignoreSpaces(this.value)" style="border:1px solid">
    </td>
    </tr>
    <tr>
    <td><font size="2">SITO:<font color="#008080"></font></td>
    <td><input name="url" size="30" type="text" maxlength="80" value="http://" onBlur="this.value=ignoreSpaces(this.value)" style="border:1px solid">
    </td>
    </tr>
    <tr>
    <td><font size="2">CITTA':<font color="#008080"></font></td>
    <td><input name="citta" size="30" type="text" maxlength="20" onBlur="this.value=ignoreSpaces(this.value)" style="border:1px solid">
    </td>
    </tr>
    <tr>
    <td valign="top"><font size="2">MESSAGGIO:</font><font size="2" color="red">*</font>
    </td>
    <td><textarea name="messaggio" wrap="soft" cols="40" rows="10" onkeyup="conta(this.form)"
    style="border:1px solid" onblur="this.value=this.value.replace(/^\s*/,'')"></textarea>
    </td></tr>
    </table>
    <table width="450" border="0">

    <tr><td align="center" width="90"><input type="submit" value="Invia"></td><td><font face="arial" size="2">Max<input value="500" size="1" name="num" readonly>
    caratteri</font></td>
    </tr>
    </form>

  4. #4
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Mi funziona tutto...nonostante tu non abbia chiuso il tag input:

    <td><input name="nome" value="<? echo $_SESSION['nome'];?>" size="30" type="text" maxlength="30" style="border:1px solid" onblur="this.value=this.value.replace(/^\s*/,'')"> </td>

    Ma non credo sia questo il problema.

    Nel file ins.php ho messo per testare questo codice e funziona:
    Codice PHP:
    $_SESSION['nome'] = $_POST['nome'];
    print(
    "session_nome = "$_SESSION['nome']); 
    Forse il tuo server non ha l'auto start della sessione...prova a mettere un session_start(); prima del codice in entrambe le pagine (va messo prima di qualunque codice, php o html che sia).

  5. #5
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Il_Drugo
    Mi funziona tutto...nonostante tu non abbia chiuso il tag input:

    <td><input name="nome" value="<? echo $_SESSION['nome'];?>" size="30" type="text" maxlength="30" style="border:1px solid" onblur="this.value=this.value.replace(/^\s*/,'')"> </td>

    Ma non credo sia questo il problema.

    Nel file ins.php ho messo per testare questo codice e funziona:
    Codice PHP:
    $_SESSION['nome'] = $_POST['nome'];
    print(
    "session_nome = "$_SESSION['nome']); 
    Forse il tuo server non ha l'auto start della sessione...prova a mettere un session_start(); prima del codice in entrambe le pagine (va messo prima di qualunque codice, php o html che sia).
    Funziona ma c'è qlcosa ancora

    il nuovo form...nel campo "nome" ci sono 2 effe fisse (ff) che non so da dove arrivano, poi nel campo "messaggio" non mantiene ciò che era scritto (quando viene rimandato al form dopo l'alert)


    <form method="POST" action="ins.php" name="mioform" onSubmit="return controlla()">

    <tr>
    <td><font size="2">NOME:</font><font size="2" color="red">*</font>
    </td>
    <td> <input name="nome" value="<?session_start(); echo $_SESSION['nome'];?>" size="30" type="text" maxlength="30" style="border:1px solid"
    onblur="this.value=this.value.replace(/^\s*/,'')"></td>
    </tr>
    <tr>
    <td><font size="2">EMAIL:<font color="#008080"></font></td>
    <td><input name="email" value="<?session_start(); echo $_SESSION['email'];?>" size="30" type="text" maxlength="30" onBlur="this.value=ignoreSpaces(this.value)" style="border:1px solid">
    </td>
    </tr>
    <tr>
    <td><font size="2">SITO:<font color="#008080"></font></td>
    <td><input name="url" value="<?session_start(); echo $_SESSION['url'];?>" size="30" type="text" maxlength="80" value="http://" onBlur="this.value=ignoreSpaces(this.value)" style="border:1px solid">
    </td>
    </tr>
    <tr>
    <td><font size="2">CITTA':<font color="#008080"></font></td>
    <td><input name="citta" value="<?session_start(); echo $_SESSION['citta'];?>" size="30" type="text" maxlength="20" onBlur="this.value=ignoreSpaces(this.value)" style="border:1px solid">
    </td>
    </tr>
    <tr>
    <td valign="top"><font size="2">MESSAGGIO:</font><font size="2" color="red">*</font>
    </td>
    <td><textarea name="messaggio" value="<?session_start(); echo $_SESSION['messaggio'];?>" wrap="soft" cols="40" rows="10" onkeyup="conta(this.form)"
    style="border:1px solid" onblur="this.value=this.value.replace(/^\s*/,'')"></textarea>
    </td></tr>
    </table>
    <table width="450" border="0">

    <tr><td align="center" width="90"><input type="submit" value="Invia"></td><td><font face="arial" size="2">Max<input value="500" size="1" name="num" readonly>
    caratteri</font></td>
    </tr>
    </form>

  6. #6
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Braco
    Diciamo che funziona ma solo il textarea non mantiene i dati, il codice va forse inserito diversamente?

    <td><textarea name="messaggio" value="<?session_start(); echo $_SESSION['messaggio'];?>" wrap="soft" cols="40" rows="10" onkeyup="conta(this.form)"
    style="border:1px solid" onblur="this.value=this.value.replace(/^\s*/,'')"></textarea>
    </td>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.