Message d'Erreur

Eléphant du PHP | 330 Messages

29 nov. 2005, 00:50

Bonsoir,

Je voudrai dans un formulaire quand certaines données ne sont pas remplies, avoir une fenêtre de message qui apparaît me le disant avec un bouton Fermer pour revenir au formulaire.

Ce qui serait top c'est que je me positionne sur la première zone non remplie.

Merci d'avance

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

29 nov. 2005, 01:23

Bonsoir,
Je voudrai dans un formulaire quand certaines données ne sont pas remplies, avoir une fenêtre de message qui apparaît me le disant avec un bouton Fermer pour revenir au formulaire.
C'est du javascript qu'il te faut :wink:
a moins que tu n'ai envi de faire une popup (simulant une tel fenetre)
Ce qui serait top c'est que je me positionne sur la première zone non remplie.

pareil javscript:
document.formulaire.champ.focus();

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphanteau du PHP | 25 Messages

29 nov. 2005, 02:22

<script>
function Controle()
            {
                if(document.ton_formulaire.nom_de_ton_champ.value=='')
                {
                    alert('Veuillez renseigner nom_de_ton_champ');
                    document.ton_formulaire.nom_de_ton_champ.focus();
                }
             }
</script>
et ton bouton de formulaire :
<input type="[b]button[/b]" name="mon_bouton" value="valider" onClick="javascript:Controle();">

c'est le genre de questions que je posais il y a quelques mois, aujourd'hui je suis content de pouvoir aider à mon tour.

Eléphant du PHP | 330 Messages

29 nov. 2005, 22:11

Bonsoir et merci à tous les deux.

Je vais essayer le script mais serai aussi intéressé par un pop up.

Merci de me donner le code

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

29 nov. 2005, 22:20

c'est vrai qu'il n'y a pas assez de moyens de recherche d'un tel script :-#
#-o
regarde quand meme ceci

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 330 Messages

29 nov. 2005, 23:11

Merci Truc (bien que ma mère m' a toujours dit de ne pas appeler quelqu'un comme cela !!!)

Comment je fait dans mon script pour que si j'ai un message d'erreur, je ne passe pas à l'instruction suivante (comme exit ?????)

Merci d'avance

Mammouth du PHP | 1311 Messages

29 nov. 2005, 23:29

exit ou die voir break

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 nov. 2005, 00:35

Merci Truc (bien que ma mère m' a toujours dit de ne pas appeler quelqu'un comme cela !!!)
No problem :wink:
au moins pas de difficultés de prononciation ,tout le monde connais :wink:

hormis les exit, die et cie ... pas forcément bien vus (dépend des cas), un simple test qui verifi si l'instruction suivante peut etre réalisée:
$ok=true;//initialisation
if(ok)
  //instruction ok
else
  $ok= false;

//traitement

if($ok)
...

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 330 Messages

30 nov. 2005, 21:43

Merci

J'avais pensé à qque chose comme cela avant de voir ton exemple (voir code ci-joint)

Le problème c'est que cela ne marche pas dans mon test car je n'arrive pas à inscrire la valeur de OK.

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

<title>Livre d'Or</title>

<!--Indique une feuille de style interne -->

<style type="text/css">

<!--Couleur des Liens -->

a:link{color:red};
a:visited{color:blue};
a:hover{color:black};
a:active{color:green};

body{
background-color:"#B2B2B2";
text-align:center
}

table{
background-color: "#B2B2B2";
}

<!--Indique la position dans une cellule du tableau -->
td.gauche{text-align:left}
td.droite{text-align:right}
td.centre{text-align:center}
.red{color:red}


</style>

</head>

<SCRIPT Language="JavaScript">

Code : Tout sélectionner

function Controle(test) { $OK=true if(document.test.txtName.value=='') { alert('Veuillez renseigner la zone Nom '); document.test.txtName.focus(); $OK= false; } }
</script>

<body>


<!-- Barre de Navigation -->
<table style="padding: 0px; width: 90%; margin-left: auto; margin-right: auto; ;"
border="0" cellpadding="2" cellspacing="2">
<tr>
<td
style="width: auto; text-align: center; color: rgb(102, 0, 0);"><a
href="index.php" style="text-decoration: none;font-size: 20px;">Accueil</a></td>
<td
style="width: auto; text-align: center; color: rgb(102, 0, 0);"><a
href="Themes.php" style="text-decoration: none;font-size: 20px;">Galerie</a></td>
<td
style="width: auto; text-align: center; color: rgb(102, 0, 0);"><a
href="Auteur.php" style="text-decoration: none;font-size: 20px;">Auteur</a></td>
<td
style="width: auto; text-align: center; color: rgb(102, 0, 0);font-size : 20px;">Livre d'Or</td>
<td
style="width: auto; text-align: center; color: rgb(102, 0, 0);font-size: 20px;"><a
href="liens.php" style="text-decoration: none;">Liens</a></td>
</tr>
</table>

<!-- -->
<h1>Bienvenue sur mon livre d'or</h1>
<p>&nbsp;</p>

<?php

include ("connection.php");

//Initialisation des variables
$table="tbllivredor";
//Le message sera reçu par l'intermédiaire du serveur de l'hébergeur (ex Apache)
$page = $_SERVER ["PHP_SELF"];
$adresseemail="[email protected]";
$name="";
$city="";
$country="";
$email="";
$url="";
$note="";
$comment="";



$result = mysql_query("SELECT * FROM $table ORDER BY id_message DESC");
$total=mysql_numrows($result);

?>

<!-- -->
<table border="1" width="50%" cellspacing="0" cellpadding="5">
<tr>
<td class="gauche">[<a href="#form">Signer le Livre d'Or <SPAN Class="Red">en cliquant ici</SPAN></a>]</td>
<td class="droite">[<b>Au total : <? echo $total; ?> messages</b>]
</tr>
</table>

<!-- -->
<?php
while ($val = mysql_fetch_array($result))
{
?>
<p>&nbsp;</p>
<table border="0" width="50%" cellspacing="0">
<tr>
<td colspan="2" class="gauche"><b>De : </b>
<?= $val["nom"]; ?>
<?php
if ($val["email"]) { ?>&nbsp;&nbsp;&nbsp;<A href="mailto:<?= $val["email"]; ?>"><small>[Écrivez moi] </small></A><?php } ?>
<?php
if ($val["site"]!="http://") { ?><A href="<?= $val["site"]; ?>"><small>[Site Web] </small></A><?php } ?>
</td>
</tr>
<tr>
<td class="gauche">
<?php
if($val["ville"]){echo "<b>Ville : </b>".$val['ville']." "; } ?></td>
<td class="droite"><?php if($val["pays"]){echo "<b>Pays : </b>".$val['pays']."<br>"; } ?></td>
</tr>
<tr>
<td colspan="2"><b>Inscrit le : </b> <?= $val["date"]; ?></td>
</tr>
<tr>
<td colspan="2"><hr><b>Message : </b>
<?= str_replace("<","<",$val["commentaire"]); ?></td>
</tr>
</table>
<?php
}
?>

<!-- -->
<p><a name="form"></a>&nbsp;</p>
<!--Création du formulaire-->
<form method="post" action="<?= $page ?>" name="test">
<fieldset><legend>Laissez nous votre commentaire</legend>
<div style="text-align:center">
<table cellpadding="3">
<tr>
<td colspan="4">Nom <input name="txtName" value="" size="15" maxlength="30"></td>
<td colspan="4">Ville <input name="txtCity" size="15" maxlength="30"></td>
<td colspan="4">Pays <select name="lstCountry">
<option value="France" selected>France
<option value="Grande Bretagne">Grande Bretagne
<option value="Canada">Canada
<option value="Italie">Italie
<option value="Belgique" >Belgique
<option value="Suisse">Suisse
<option value="Luxembourg">Luxembourg
<option value="USA">USA
<option value="Autre">Autre
</select>
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td colspan="5">E-mail<br><input name="txtEmail" size="20" maxlength="30"></td>
<td colspan="5">Site<br><input name="txtUrl" value="http://" size="20" maxlength="30">
</td>
<td>&nbsp;</td>
</tr>

<tr>
<td colspan="12"><br><textarea name="txaComment" rows="10" cols="55"></textarea>

Code : Tout sélectionner

<br><br><input type="button" value="Signer le livre" name="bntSoumet" onClick="javascript:Controle(test);"><input type="reset" value="Effacer"><br>
</td>
</tr>
</table>
</div>
</fieldset>
</form>
<!-- -->
<?php

echo "$OK";
	
?>     


</BODY>
</HTML>

Eléphanteau du PHP | 25 Messages

30 nov. 2005, 22:14

mon avis, mais je suis pas sur :

$OK=true

manque un ;

sinon tu définis $OK dans ta fonction javascript. Donc à l'affichage de ta page, la fonction n'étant pas appelée, tu ne peux donc pas afficher $OK. Si tu appele ta fonction, la page étant déjà chargée, tu ne peux donc pas afficher $OK.

mais encore une fois je suis pas sur car je n'ai pas dépouillé tout ton code...

Eléphant du PHP | 330 Messages

30 nov. 2005, 22:41

Merci Truc (bien que ma mère m' a toujours dit de ne pas appeler quelqu'un comme cela !!!)
No problem :wink:
au moins pas de difficultés de prononciation ,tout le monde connais :wink:

hormis les exit, die et cie ... pas forcément bien vus (dépend des cas), un simple test qui verifi si l'instruction suivante peut etre réalisée:
$ok=true;//initialisation
if(ok)
  //instruction ok
else
  $ok= false;

//traitement

if($ok)
...
Merci mais à quel niveau tu mets cela :

dans la fonction script ?????

Merci de ta réponse

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

01 déc. 2005, 03:45

on va dire que tu reste sur le javascript (voir ce post)???

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute