avec ce code, l'alerte est donnée par le javascript lorsqu'on commence à entrer des caractères, mais le gros problème, c'est qu'il est possible de poster n'importe quoi.

Le but est d'empêcher l'exécution du submit si on reçoit pas de chiffres en entrée,

le fichier s'appelle test.php
<script> 
function checknum() 
{ 
var valeur = document.formulaire.champs.value; 
var reg = new RegExp("[^0-9]", "gi"); 
if(valeur.match(reg)) 
{ 
document.getElementById("warn").innerHTML = "<span style='color: red;'>Attention ! Ce champ ne doit contenir que des chiffres !</span>"; 
} 
else 
{ 
document.getElementById("warn").innerHTML = ""; 
} 
} 
</script> 

<?php
if(!empty($_POST['champs'])){
$valeur = $_POST['champs']; 
		if(!is_numeric($valeur)) 
			{ 
				echo "Ce champ ne doit contenir que des chiffres."; 
			} 
}
		else 
			{ 
				echo "<form name=\"formulaire\" method=\"GET\" action=\"test.php\">
Page N° : 
<input type=\"text\" name=\"champs\" style=\"width:190px;height:20px;\" value=\"Saisissez le numéro la page\" onkeyup=\"checknum();\" onFocus=\"this.value=''\"/>
<input type=\"submit\" value=\"Aller\"/>
</form>";
} 
?>

<p id='warn'></p> 

Modifié par Smithow (27 Mar 2011 - 19:35)