Ciao a tutti... vorrei porre un quesito...
Io ho scritto un form in php, e voglio fare il controllo che alcuni campi siano inseriti prima di confermare e che l'email sia corretta...
Ora... vi allego il form in php
Codice PHP:
<form name="modulo" action="data_insert.php?action=add&type=user" method="post" onSubmit="return (Controllo());">
<table align='center' width='100%' border='0'>
<tr>
<td width='18%'align="right">Nome:</td>
<td width="82%"align="left" >
<input name="firstname" type="text" size="20" maxlength="25">
<font color="#FF0000" font size="-2">*</font>
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right">Cognome:</td>
<td width="82%"align="left" >
<input name="lastname" type="text" size="20" maxlength="50">
<font color="#FF0000" font size="-2">*</font></td>
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%' align="right">Email:</td>
<td width="82%"align="left" >
<input name="email" type="text" size="20" maxlength="40">
<font color="#FF0000" font size="-2">*</font></td>
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right">Password:</td>
<td width="82%"align="left" >
<input name="pass" type="password" maxlength="15">
<font color="#FF0000" font size="-2">*</font></td>
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right">Conferma Password:</td>
<td width="82%"align="left" >
<input name="confermapass" type="password" maxlength="15">
<font color="#FF0000" font size="-2">*</font></td>
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right">Indirizzo:</td>
<td width="82%"align="left" >
<input name="indirizzo" type="text" maxlength="70">
<font color="#FF0000" font size="-2">*</font></td>
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right">Cittá:</td>
<td width="82%"align="left" >
<input name="citta" type="text" maxlength="30">
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right" >Telefono:</td>
<td width="82%"align="left" >
<input name="tel" type="text" size="20" maxlength="20">
<td width="0%"align="right"></td>
</tr>
<tr>
<td width='18%'align="right">Matricola:</td>
<td width="82%"align="left" >
<input name="matricola" type="text" maxlength="70">
</td>
<td width="0%"align="right"></td>
</tr>
<td width='18%'align="right" >Data di nascita:</td>
<td width="82%"align="left" >
<select name="birthday_day" id="birthday_day" onchange="bagofholding" autocomplete="off"><option value="-1">Giorno:</option><option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select> <select class="" id="birthday_month" name="birthday_month" onchange="return run_with(this, ["editor"], function() {editor_date_month_change(this, "birthday_day", "birthday_year");});">
<option value="-1">Mese:</option>
<option value="1">Gennaio</option>
<option value="2">Febbraio</option>
<option value="3">Marzo</option>
<option value="4">Aprile</option>
<option value="5">Maggio</option>
<option value="6">Giugno</option>
<option value="7">Luglio</option>
<option value="8">Agosto</option>
<option value="9">Settembre</option>
<option value="10">Ottobre</option>
<option value="11">Novembre</option>
<option value="12">Dicembre</option>
</select> <select name="birthday_year" id="birthday_year" onchange="return run_with(this, ["editor"], function() {editor_date_month_change("birthday_month","birthday_day",this);});" autocomplete="off"><option value="-1">Anno:</option><option value="2011">2011</option>
<option value="2010">2010</option>
<option value="2009">2009</option>
<option value="2008">2008</option>
<option value="2007">2007</option>
<option value="2006">2006</option>
<option value="2005">2005</option>
<option value="2004">2004</option>
<option value="2003">2003</option>
<option value="2002">2002</option>
<option value="2001">2001</option>
<option value="2000">2000</option>
<option value="1999">1999</option>
<option value="1998">1998</option>
<option value="1997">1997</option>
<option value="1996">1996</option>
<option value="1995">1995</option>
<option value="1994">1994</option>
<option value="1993">1993</option>
<option value="1992">1992</option>
<option value="1991">1991</option>
<option value="1990">1990</option>
<option value="1989">1989</option>
<option value="1988">1988</option>
<option value="1987">1987</option>
<option value="1986">1986</option>
<option value="1985">1985</option>
<option value="1984">1984</option>
<option value="1983">1983</option>
<option value="1982">1982</option>
<option value="1981">1981</option>
<option value="1980">1980</option>
<option value="1979">1979</option>
<option value="1978">1978</option>
<option value="1977">1977</option>
<option value="1976">1976</option>
<option value="1975">1975</option>
<option value="1974">1974</option>
<option value="1973">1973</option>
<option value="1972">1972</option>
<option value="1971">1971</option>
<option value="1970">1970</option>
<option value="1969">1969</option>
<option value="1968">1968</option>
<option value="1967">1967</option>
<option value="1966">1966</option>
<option value="1965">1965</option>
<option value="1964">1964</option>
<option value="1963">1963</option>
<option value="1962">1962</option>
<option value="1961">1961</option>
<option value="1960">1960</option>
<option value="1959">1959</option>
<option value="1958">1958</option>
<option value="1957">1957</option>
<option value="1956">1956</option>
<option value="1955">1955</option>
<option value="1954">1954</option>
<option value="1953">1953</option>
<option value="1952">1952</option>
<option value="1951">1951</option>
<option value="1950">1950</option>
<option value="1949">1949</option>
<option value="1948">1948</option>
<option value="1947">1947</option>
<option value="1946">1946</option>
<option value="1945">1945</option>
<option value="1944">1944</option>
<option value="1943">1943</option>
<option value="1942">1942</option>
<option value="1941">1941</option>
<option value="1940">1940</option>
<option value="1939">1939</option>
<option value="1938">1938</option>
<option value="1937">1937</option>
<option value="1936">1936</option>
<option value="1935">1935</option>
<option value="1934">1934</option>
<option value="1933">1933</option>
<option value="1932">1932</option>
<option value="1931">1931</option>
<option value="1930">1930</option>
<option value="1929">1929</option>
<option value="1928">1928</option>
<option value="1927">1927</option>
<option value="1926">1926</option>
<option value="1925">1925</option>
<option value="1924">1924</option>
<option value="1923">1923</option>
<option value="1922">1922</option>
<option value="1921">1921</option>
<option value="1920">1920</option>
<option value="1919">1919</option>
<option value="1918">1918</option>
<option value="1917">1917</option>
<option value="1916">1916</option>
<option value="1915">1915</option>
<option value="1914">1914</option>
<option value="1913">1913</option>
<option value="1912">1912</option>
<option value="1911">1911</option>
<option value="1910">1910</option>
<option value="1909">1909</option>
<option value="1908">1908</option>
<option value="1907">1907</option>
<option value="1906">1906</option>
<option value="1905">1905</option>
</select></div></td></tr><tr><td class="label"></td><td><div id="birthday_warning"></table>
<input type="submit" name="Submit" value="Crea Account">
</form>
Ad inizio pagina, invece, metto questo codice JS (che tra l'altro ho trovato in un post di questo forum e risultava ad altri utenti funzionante):
Codice PHP:
<SCRIPT LANGUAGE="JavaScript">
function Controllo()
{
with(document.quiz) {
if(firstname.value.trim()=="") {
alert("Inserisci il tuo nome per favore!");
nome.focus();
return false;
}
if(lastname.value.trim()=="") {
alert("Inserisci il tuo cognome per favore!");
cognome.focus();
return false;
}
if(email.value.trim()=="") {
alert("Inserisci la tua mail per favore!");
email.focus();
return false;
}
}
alert("Ok!");
return true;
}
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
}
E non funziona, mi crea l'account anche se lascio tutto vuoto.
Avevo anche un altro codice di controllo che sono sicuro al 100% che funzionasse in un altro form di un altro mio sito, ma qui non funziona...
L'unica cosa che funziona è questo:
Codice PHP:
function ControllaMail()
{
EmailAddr = document.modulo.email.value;
Filtro = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-]{2,})+.)+([a-zA-Z0-9]{2,})+$/;
if (Filtro.test(EmailAddr))
return true;
else
{
alert("Controlla l'indirizzo e-mail inserito!");
document.modulo.email.focus();
return false;
}
Qualcuno saprebbe mica spiegarmi il perchè? Ne sarei davvero grato.
Grazie
Andrea