8768 sujets

Développement web côté serveur, CMS

Bonjour à tous,
alors voila, j'ai un petit souci avec formulaire que je n'arrive pas à faire fontionner.
Je me dirait d'un niveau débutant -1 ^^

Sur mon site j'ai une page réglages, dans laquelle j'ai un formulaire composé de boutons "radio".
Quand on clique sur un des boutons, la valeur est ensuite stockée dans un cookie, puis récupérée par la suite sur un autre endroit.
Tout fonctionne c'est ok.
Mon souci, c'est que je souhaiterai ajouter à ces boutons radio, un formulaire de type Bootstrap select. Je m'exprime peut être mal, désolé.
Un menu déroulant, et quand on sélectionne un choix, cette valeur est récupérer comme pour les boutons radio, et placée dans un cookie. Mais je n'y arrive pas...

Voici ma partie réglages:

<div class="results_c_pref">
	<form action="{$url}/index.php?a=preferences" method="POST" class="form-horizontal">
		<h4>Afficher le mot-cl&eacute; en gras</h4>
		<label class="radio">
			<input type="radio" name="highlight" id="highOff" value=" " {$highOff} />
			<strong>Non</strong> - Ne pas afficher le mot-cl&eacute; en gras.
		</label>
		<label class="radio">
			<input type="radio" name="highlight" id="highOn" value="EnableHighlighting" {$highOn} />
			<strong>Oui</strong> - Afficher le mot-cl&eacute; en gras.
		</label>

	<hr>

		<h4>Changer</h4>
		<label class="sel1">
			<select class="sel1" id="sel1">
				<option><strong>test1</strong><name="test" id="" value="test1" {$test1} </option>
				<option><strong>test2</strong><name="test" id="" value="test2" {$test2} </option>
				<option><strong>test3</strong><name="test" id="" value="test3" {$test3} </option>
			</select>
		</label>

		<hr>

		<button type="submit" class="btn btn-info">Enregistrer mes pr&eacute;f&eacute;rences</button>
		<a href="https://..." class="btn">Retour</a>
	</form>
</div>


Pour la partie boutons radio, tout fonctionne quand je clique sur enregistrer mes préférences, le cookie est bien créé et placé et contient ma valeur pas de souci, mais j'aimerai faire la même chose pour mon "formulaire".

Encore une fois, je suis un noob, j'arrive à faire de la bidouille, voir de la bidouille avancée, mais je ne comprends pas le langage dans son ensemble et en particulier les bases... du coup je bloque rapidement sur des bêtises.

Merci à vous pour votre aide.
Modifié par cypressk8 (20 Jan 2016 - 10:59)
Bonjour,

Ton problème doit provenir du name="test" que tu as mis sur les <option> de ton <select> alors que tu devrais juste le mettre une fois sur ton <select>.

Contrairement aux boutons radio juste au-dessus qui ont besoin d'avoir tous le même nom pour les associer ensemble...
Merci beaucoup SolidSnake !
En effet j'avais mal écrit tout ça... j'ai changé en supprimant le "name" et en plaçant mon "value" dans la première balise option et tout marche nickel.

Merci à toi ! Smiley smile
Bonjour,

Etant moi aussi début, je me retrouve avec un problème concernant mon formulaire.

il s'agit d'un script boostrap, là dessus tout va bien il s'affiche parfaitement.
mais je ne reçois pas l'émail, et pour cause, je ne me rappelle plus comment on doit procéder au niveau encodage php.
si vous pouviez m'aider, ça me soulagerait bcp


alors, je me suis basé sur le code ici: http://www.html5templatesdreamweaver.com/bootstrap-form.html mais lorsque je fais ce qui est dis, mon site ne s'affiche plus.

mon code bosstrap:


<!-- Container (Contact Section) -->
<div id="contact" class="container-fluid bg-grey">
<h2 class="text-center">CONTACT</h2>
<div class="row">
<div class="col-sm-5">
<p>Nous joindre</p>
<p><span class="glyphicon glyphicon-map-marker"></span> ******</p>
<p><span class="glyphicon glyphicon-phone"></span> ******</p>
<p><span class="glyphicon glyphicon-envelope"> info@safrandumontpanisel.be</span></p>
</div>
<div class="col-sm-7 slideanim">
<div class="row">
<div class="col-sm-6 form-group">
<input class="form-control" id="name" name="name" placeholder="Entrez votre nom" type="text" required>
</div>
<div class="col-sm-6 form-group">
<input class="form-control" id="email" name="email" placeholder="Adresse email" type="email" required>
</div>
</div>
<textarea class="form-control" id="comments" name="comments" placeholder="Commentaire" rows="5"></textarea><br>
<div class="row">
<div class="col-sm-12 form-group">
<button class="btn btn-default pull-right" type="submit">Envoyer</button>
</div>
</div>
</div>
</div>
</div>


code dans la balise head:

<meta charset="utf-8">
<title>Your Name Here - Welcome</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">

<link href="scripts/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="scripts/bootstrap/css/bootstrap-responsive.min.css" rel="stylesheet">

<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

<link href="styles/custom.css" rel="stylesheet" type="text/css" />
<script src="email/validation.js" type="text/javascript"></script>


fichier validation js:




function validation()
{

var contactname=document.enq.name.value;
var name_exp=/^[A-Za-z\s]+$/;
if(contactname=='')
{
alert("Name Field Should Not Be Empty!");
document.enq.name.focus();
return false;
}
else if(!contactname.match(name_exp))
{
alert("Invalid Name field!");
document.enq.name.focus();
return false;
}

var email=document.enq.email.value;
//var email_exp=/^[A-Za-z0-9\.-_\$]+@[A-Za-z]+\.[a-z]{2,4}$/;
var email_exp=/^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
if(email=='')
{
alert("Please Enter Email-Id!");
document.enq.email.focus();
return false;
}
else if(!email.match(email_exp))
{
alert("Invalid Email ID !");
document.enq.email.focus();
return false;
}


var message=document.enq.message.value;
if(message=='')
{
alert("Query Field Should Not Be Empty!");
document.enq.message.focus();
return false;
}
return true;
}