Récupérer résultat requete dans <script>

Résolu/Fermé
jpouzoulet Messages postés 22 Date d'inscription vendredi 21 juin 2013 Statut Membre Dernière intervention 1 janvier 2015 - 31 juil. 2013 à 16:05
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 - 31 juil. 2013 à 16:26
Bonjour,

Je souhaiterai savoir comment faire pour récupérer la valeur d'une requete pour l'utiliser dans le javascript.

J'ai un formulaire, je souhaite le vérifier avant de le valider.
Je prend l'exemple d'un titre, il s'agit d'un article identifié par 3 lettres, ça je sais le vérifier ! mais je souhaiterai vérifier que mon article existe dans ma base alors j'avais mis un peu de php avec ma requete dans le descriptif du formulaire. J'aimerai récupéré mon résultat dans le script pour pouvoir mettre un alert..
Je ne sais pas si c'est possible ..

Des idées ?

Mon code qui ne marche pas puisqu'il valide le formulaire si la date est correct et le code titre sur 3 caractères ( en gros pas de vérification en base ) :
<?php session_start(); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>authentification</title>
<link href="css/Site.css" rel="stylesheet" type="text/css">
<?php
$con=mysqli_connect('localhost','root','','euclesbo');
// Check connection
if (mysqli_connect_errno($con))
echo "Failed to connect to MySQL: " . mysqli_connect_error();
?>
<script type="text/javascript">
function verifForm(f,nb0){


//verification de la date
var regex=/^(0[1-9]|[1-2][0-9]|3[0-1])\/(0[1-9]|1[0-2])\/[0-9]{4}$/;
if(!regex.test(f.datepublication.value)){

alert("La date saisie n'est pas au bon format (jj/mm/aaaa)");
return false;

}
//verifier que code titre sur 3 char
var regex=/^[a-zA-Z]{3}$/;
if(!regex.test(f.codetitre.value)){

alert("Le code titre n'est pas au bon format (3 caractères)");
return false;

}
// verifier que code titre est dans la base
if (nb0!=1){
alert("Le code titre saisie n'existe pas");
return false;

}


}

</script>

</head>
<body>

<?php include("entete.php"); ?>

<div class="page">
<br>
<h4>Ajouter une ligne de commande</h4>
<br>
<form onsubmit="return verifForm(this, <?php $nb0; ?> )" action="ajout_ligne2.php" method="post" >

<p>
<label style="text-indent:33px " class="label" >Date publication (jj/mm/aaaa):</label>
<input name="datepublication" type="text" class="text2" >
*
</p>
<br>
<p>
<label style='text-indent:70px' class="label">Code titre (3 caractères):</label>

<input name="codetitre" type="text" class="text2" >
*
<?php
if (!EMPTY($_POST['codetitre']))
{
$codetitre=$_POST['codetitre'];
$nb=mysqli_query($con,"SELECT count(*) from newspaper where newspapercode='$codetitre'");
$nb0=mysqli_fetch_row($nb);

}
?>
</p>


<br>
<p>
<label style='text-indent:0px' class="label">Code Point de Vente (12 caractères):</label>
<input name="codepdv" type="text" class="text2" >
*
</p>
<br>
<p>
<label style='text-indent:200px' class="label">Prix:</label>
<input name="prix" type="text" class="text2" >
*
</p>
<br>
<p>
<label style='text-indent:90px' class="label">Fournisseur de fichier:</label>
<?php
$reponse0 = mysqli_query($con,"SELECT fileprovider FROM file_provider order by fileprovider ");
if($reponse0){
echo "<select name='founisseurfic' style='margin-left : 100px'>";
while ($donnees0 = mysqli_fetch_array($reponse0) ) {
echo '<option value="' . $donnees0['0'] . '">' . $donnees0['0'] . '</option>';
}
echo "</select>";
}
?>
</p>
<br>
<p >
<label style="text-indent:177px" class="label">Quantité:</label>
<input name="nom" type="text" class="text2" >
*
</p>
<br>
<p >
<label style="text-indent:42px" class="label">Informations complémentaires:</label>

<input name="prenom" type="textarea" class="text2">
*
</p>

<br>
<p class="label">
<small><i>(*) champ(s) obligatoire(s)</i></small>
</p>

<p>
<input class="button" name="valider" value="Ajouter la ligne à la commande" type="submit">

</p>
</form>



</div>
<?php include("pied_de_page.php");
mysqli_close($con);
?>
</body>
</html>

A voir également:

2 réponses

ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
31 juil. 2013 à 16:08
Salut,

si tu veux faire ça, tu vas devoir passer par un code ajax.

Tu peux lancer ta vérification à chaque modification du champs voulu, ta fonction de vérification va envoyer une requête ajax pour savoir si les données entrées sont déjà en base ou non, et suivant la valeur de retour tu affiches quelque chose à côté de ton champ de formulaire.
0
jpouzoulet Messages postés 22 Date d'inscription vendredi 21 juin 2013 Statut Membre Dernière intervention 1 janvier 2015
31 juil. 2013 à 16:11
Comme quand le champ devient rouge si l'information saisie est incorrect ?



Pas moyen d'essayer avec ma technique ? (alert () ? )
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
31 juil. 2013 à 16:12
oui un peu comme ça

Et bien, si tu peux afficher ton résultat dans un alert, mais ce n'est pas très convivial, une simple mention, éventuellement en rouge et un blocage du formulaire sont moins intrusifs
0
jpouzoulet Messages postés 22 Date d'inscription vendredi 21 juin 2013 Statut Membre Dernière intervention 1 janvier 2015
31 juil. 2013 à 16:19
Je dois utiliser un onblur ? comment mettre un requete php dans un fonction javascript ?
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
31 juil. 2013 à 16:21
oui, il faut passer par l'event blur, tu vas devoir utiliser le jQuery pour te simplifier la tâche.

Sur l'event blur, tu appelles une fonction qui va passer à un script php la valeur du champ

tu peux utiliser la fonction ajax de jQuery pour faire ça :
https://api.jquery.com/jQuery.ajax/
0
jpouzoulet Messages postés 22 Date d'inscription vendredi 21 juin 2013 Statut Membre Dernière intervention 1 janvier 2015
31 juil. 2013 à 16:26
ok Je vais me documenter la dessus merci de ton aide !
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
31 juil. 2013 à 16:26
pas de soucis, hésite pas si t'as besoin de précisions
0