Ctrl longueur champs javascript
Résolu
Laëtitia
-
Michael_Ange Messages postés 223 Date d'inscription Statut Membre Dernière intervention -
Michael_Ange Messages postés 223 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
ce matin j'ai trouvé un code pour vérifier la longueur des champs et ça marchait, cette aprm, ça ne fonctionne plus !!!
Voici mon code :
<?php
session_start();
//si la session n'existe pas, redirection vers index.php
if (!isset($_SESSION['nom']))
{
Header('Location: index.php');
}
//on affiche la page voulue
else
{
echo'<HTML>';
echo'<HEAD>';
echo"<TITLE>Ajout d'accès</TITLE>";
echo'<link rel="stylesheet" href="include/style.css">';
echo'<script> ';
echo"function valider(monchamps){
var mini = 1
var maxi = 4
if ( mini != 0 ) {
// Si la longueur de la saisie est inférieure au minimum demandé
if ( monchamps.value.length < mini ) {
// Envoi d'une alerte
alert('Vous devez saisir au moins ' + mini + ' caracteres.');
return false
}
}
// Si la longueur de la saisie est supérieure au maximum demandé
if ( maxi != 0 ) {
if ( monchamps.value.length > maxi ) {
alert('Vous ne devez pas saisir plus de ' + maxi + ' caracteres.');
return false
}
}
}
</script> ";
echo'</HEAD>';
echo'<BODY>';
echo'<form action="acces_ajoutbis.php" method="post">';
echo'<div id="ecriture2">';
echo"Ajout d'accès <br/><br/>";
echo'</div>';
echo'<div id="ecriture1">';
include ("/var/www/function.php");
require_once ("/var/www/include/auth.inc");
$mysqlLink = connexion(HOST,USER,PWD,BDD);
$requete="SELECT tAcces FROM acces;";
$result = mysql_query($requete) or die("Requete non comprise");
echo "<table>";
echo'Les accès existants : <br/>';
while ($tableau = mysql_fetch_array($result))
{
echo' ';
echo $tableau['tAcces'] ;
echo '<br/>';
}
echo'<br/><br/>';
echo ' Nom accès : <input type="text" onChange="javascript:this.value=this.value.toUpperCase();" name="nom" size=22 value="Tapez ici le nom accès" onblur="valider(this)" onfocus="if (this.value==\'Tapez ici le nom accès\') {this.value=\'\'}"/><br/><br/>';
echo'<input type="submit" value="Valider"/>';
echo'<input type="reset" value="Annuler"/><br/><br/><br/>';
echo'</div>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
echo'</form>';
}
?>
</BODY>
</HTML>
et voici le code de la page qui est appelée :
<?php
session_start();
//si la session n'existe pas, redirection vers index.php
if (!isset($_SESSION['nom']))
{
Header('Location: index.php');
}
//on affiche la page voulue
else
{
?>
<HTML>
<HEAD>
<TITLE>Ajout accès</TITLE>
<link rel="stylesheet" href="include/style.css">
</HEAD>
<BODY>
<?php
include ("/var/www/function.php");
require_once ("/var/www/include/auth.inc");
$mysqlLink = connexion(HOST,USER,PWD,BDD);
$nom=$_POST['nom'];
echo '<div id="ecriture1">';
if ($nom<1 or $nom>4)
{
echo'Ajout impossible !<br/><br/>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
}
else
{
$sql="INSERT INTO acces VALUES ('','".$nom."');";
$jeu=@mysql_query($sql,$mysqlLink);
if ($jeu==true)
{
echo 'Ajout pris en compte<br/><br/>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
}
else
{
echo 'Ajout impossible <br/><br/>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
}
echo '</div>';
}
}
?>
</BODY>
</HTML>
J'ai du mal à comprendre pk ça ne fonctionne plus...Merci de votre aide !
ce matin j'ai trouvé un code pour vérifier la longueur des champs et ça marchait, cette aprm, ça ne fonctionne plus !!!
Voici mon code :
<?php
session_start();
//si la session n'existe pas, redirection vers index.php
if (!isset($_SESSION['nom']))
{
Header('Location: index.php');
}
//on affiche la page voulue
else
{
echo'<HTML>';
echo'<HEAD>';
echo"<TITLE>Ajout d'accès</TITLE>";
echo'<link rel="stylesheet" href="include/style.css">';
echo'<script> ';
echo"function valider(monchamps){
var mini = 1
var maxi = 4
if ( mini != 0 ) {
// Si la longueur de la saisie est inférieure au minimum demandé
if ( monchamps.value.length < mini ) {
// Envoi d'une alerte
alert('Vous devez saisir au moins ' + mini + ' caracteres.');
return false
}
}
// Si la longueur de la saisie est supérieure au maximum demandé
if ( maxi != 0 ) {
if ( monchamps.value.length > maxi ) {
alert('Vous ne devez pas saisir plus de ' + maxi + ' caracteres.');
return false
}
}
}
</script> ";
echo'</HEAD>';
echo'<BODY>';
echo'<form action="acces_ajoutbis.php" method="post">';
echo'<div id="ecriture2">';
echo"Ajout d'accès <br/><br/>";
echo'</div>';
echo'<div id="ecriture1">';
include ("/var/www/function.php");
require_once ("/var/www/include/auth.inc");
$mysqlLink = connexion(HOST,USER,PWD,BDD);
$requete="SELECT tAcces FROM acces;";
$result = mysql_query($requete) or die("Requete non comprise");
echo "<table>";
echo'Les accès existants : <br/>';
while ($tableau = mysql_fetch_array($result))
{
echo' ';
echo $tableau['tAcces'] ;
echo '<br/>';
}
echo'<br/><br/>';
echo ' Nom accès : <input type="text" onChange="javascript:this.value=this.value.toUpperCase();" name="nom" size=22 value="Tapez ici le nom accès" onblur="valider(this)" onfocus="if (this.value==\'Tapez ici le nom accès\') {this.value=\'\'}"/><br/><br/>';
echo'<input type="submit" value="Valider"/>';
echo'<input type="reset" value="Annuler"/><br/><br/><br/>';
echo'</div>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
echo'</form>';
}
?>
</BODY>
</HTML>
et voici le code de la page qui est appelée :
<?php
session_start();
//si la session n'existe pas, redirection vers index.php
if (!isset($_SESSION['nom']))
{
Header('Location: index.php');
}
//on affiche la page voulue
else
{
?>
<HTML>
<HEAD>
<TITLE>Ajout accès</TITLE>
<link rel="stylesheet" href="include/style.css">
</HEAD>
<BODY>
<?php
include ("/var/www/function.php");
require_once ("/var/www/include/auth.inc");
$mysqlLink = connexion(HOST,USER,PWD,BDD);
$nom=$_POST['nom'];
echo '<div id="ecriture1">';
if ($nom<1 or $nom>4)
{
echo'Ajout impossible !<br/><br/>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
}
else
{
$sql="INSERT INTO acces VALUES ('','".$nom."');";
$jeu=@mysql_query($sql,$mysqlLink);
if ($jeu==true)
{
echo 'Ajout pris en compte<br/><br/>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
}
else
{
echo 'Ajout impossible <br/><br/>';
echo'<div id="ecriture3"';
echo "<a href='acces.php'> Retour au menu d'accès </a>";
echo'</div>';
}
echo '</div>';
}
}
?>
</BODY>
</HTML>
J'ai du mal à comprendre pk ça ne fonctionne plus...Merci de votre aide !
A voir également:
- Ctrl longueur champs javascript
- Telecharger javascript - Télécharger - Langages
- Ctrl maj n - Forum Windows 10
- Word mettre à jour tous les champs - Forum Word
- Echec mise à jour champs Word ✓ - Forum Word
- Touche ctrl ne fonctionne plus ✓ - Forum Windows XP
13 réponses
il manque plein de point-virgules (;) dans le javascript... mais si tu me donnes l'adresse de la page où ça ne marche pas, c'est mieux.
à la ligne 122:
et tu devrais faire correspondre les longueurs mini et maxi avec celles du script javascript.
if (strlen($nom) < 1 or strlen($nom) > 4)
et tu devrais faire correspondre les longueurs mini et maxi avec celles du script javascript.
Moralité de l'histoire : toujours réfléchir au code c + efficace après ça n'engage que moi comme on dit qui m'aime me suive ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Qui bosse pour qui?
Je n'ai rien contre toi, Laëtitia, mais je ne me vois pas aider "une entreprise", qui demande à ses employés de faire des choses pour lesquelles ils ne sont ni formés ni soutenus, apparemment.
Je n'ai rien contre toi, Laëtitia, mais je ne me vois pas aider "une entreprise", qui demande à ses employés de faire des choses pour lesquelles ils ne sont ni formés ni soutenus, apparemment.
OK stagiaire... reprenons.
as-tu mis un point-virgule (;) à la fin de chaque ligne de code (php et js), sauf celles finissant par { et celles commençant par //
as-tu mis un point-virgule (;) à la fin de chaque ligne de code (php et js), sauf celles finissant par { et celles commençant par //
Essaie déjà avec ces lignes :
var mini = 1 ;
var maxi = 4 ;
Il y a un excellent outil pour firefox qui est téléchargeable ici : https://addons.mozilla.org/fr/firefox/addon/1843. Il t'aidera à répérer facilement tes lignes à problèmes
var mini = 1 ;
var maxi = 4 ;
Il y a un excellent outil pour firefox qui est téléchargeable ici : https://addons.mozilla.org/fr/firefox/addon/1843. Il t'aidera à répérer facilement tes lignes à problèmes
c'est difficile de tester/comprendre pour moi, car le php ne fonctionne pas chez moi. Donc je ne sais pas où commencer.
ce code fonctionne très bien chez moi:
<html> <head> <script> function valider(monchamps){ var mini = 3; var maxi = 20; if ( mini != 0 ) { // Si la longueur de la saisie est inférieure au minimum demandé if ( monchamps.value.length < mini ) { // Envoi d'une alerte alert('Vous devez saisir au moins ' + mini + ' caracteres.'); return false; } } // Si la longueur de la saisie est supérieure au maximum demandé if ( maxi != 0 ) { if ( monchamps.value.length > maxi ) { alert('Vous ne devez pas saisir plus de ' + maxi + ' caracteres.'); return false; } } } </script> </head> <body> <form name="form1" method="post" action="moteur.html"> <input type="text" name="motsclef" id="search" onblur="valider(this)"> <input type="submit" value="Rechercher"> </form> </body> </html>
pour ce faire tu dois vérifier au niveau de php la longueur de chaîne de carac. avant l'INSERT dans la DB. ET ceci ce fait avec un
strlen();
En posant bien entendu la condition qui te renverra true ou false en fonction de la longueur strlen(ta_superbe_variable)
if (strlen(ta_superbe_variable) > longueur_ imposée)
//requête SQL qui dit de ne rien stocker dans la base : dsl c pas encore frais pour moi le SQL :D
if (strlen(ta_superbe_variable) > longueur_ imposée)
//requête SQL qui dit de ne rien stocker dans la base : dsl c pas encore frais pour moi le SQL :D
strlen($variable) te ramène un entier qui correspond à la taille de la chaine contenu dans la variable que tu lui aura passa en paramètre
exemple :
$variable = '';
if(isset($_POST['variable']))
$variable = $_POST['variable'];
//jusque là je pense que tu dois te retrouver
//maintenant essayons de voir si la taille de la chaine contenu dans $variable ,n'est pas tsupérieur à 10
if(strlen($variable)>10)
{
header('location:mapage.php'); /*si la taille de ma chaine est supérieur à 10 caractères, alors on retourne la page qui m'a conduit ici, sans chercher à exécuter la suite*/
}else
{
$requete = .....
........
}
J'espère que tu comprendras mieux l'utilisation de strlen() avec ça.
exemple :
$variable = '';
if(isset($_POST['variable']))
$variable = $_POST['variable'];
//jusque là je pense que tu dois te retrouver
//maintenant essayons de voir si la taille de la chaine contenu dans $variable ,n'est pas tsupérieur à 10
if(strlen($variable)>10)
{
header('location:mapage.php'); /*si la taille de ma chaine est supérieur à 10 caractères, alors on retourne la page qui m'a conduit ici, sans chercher à exécuter la suite*/
}else
{
$requete = .....
........
}
J'espère que tu comprendras mieux l'utilisation de strlen() avec ça.
https://www.webmaster-hub.com/blogs/entry/105-controler-la-longueur-dun-champs/