Bonjour,
Je viens vous demander de l'aide, et croyez moi que étant autodidacte c'est difficile pour moi de venir demander de l'aide, mais là après avoir chercher et écumé bon nombre de forum divers et varié, je me retrouve quand même bloqué ! :)
Bon ... je m'explique :
J'ai un livre d'or et je doit appeler un certain nombre de fonctions JS dans une page PHP le souci c'est que celle-ci ne se charge pas
(ou ne s'exécute pas), plutôt que des blabla voyons un peu le code ! :D
Ma page PHP :
Code PHP :
<?php
include('connect.php');
include('conf.inc.php');
$nom=$_POST["nom"];
$msg=$_POST["msg"];
$note=$_POST["note"];
if ( isset($msg) && isset($nom) && isset($note) && $msg!="" )
{
$message = htmlentities($msg ,ENT_QUOTES );
$date=date('Y/m/d');
$query="INSERT INTO `guestbook` ( `id` , `date` , `name` , `COMMENT` , `note` ) VALUES ('', '$date', '$nom', '$message' , '$note')";
$result=mysql_query($query) or die("Insertion dans la base impossible");
echo '<script>alert(\'Votre message a bien été posté.\');</script>';
echo '<script>location.replace(\'speak.php?do=book\')</script>';
echo '<meta http-equiv="Refresh" content="1;URL=speak.php?do=book">';
}
$HTML.='<div id="corpcenter">
<form id="form_mess" method="post" action="speak.php?do=book" name="form_mess" onSubmit="return valid()">
<input type="hidden" name="ajout" value="true" />
<table align="center" cellspacing="5" cellpadding="0">
<tr>
<td width="100%">Votre pseudo :<br /><input class="input" name="nom" type="text" size="40" /></td>
</tr>';
if ($mysql_note == 'oui')
{
$HTML.='<tr>
<td width="100%">Votre note :<br /><select class="input" name="note">
<option selected value="">--</option>
<option value="10">10 : Respect !!</option>
<option value="9">9 : Ouais, ça gère !!</option>
<option value="8">8 : Bravo les mecs !</option>
<option value="7">7 : J\'aime bien ...</option>
<option value="6">6 : Ah, pas mal !</option>
<option value="5">5 : Moyen</option>
<option value="4">4 : Encore un effort</option>
<option value="3">3 : Mouais ...</option>
<option value="2">2 : Hum ... bof !</option>
<option value="1">1 : Ca peut aller</option>
<option value="0">0 : Complètement nul</option>
</select></td>
</tr>';
}
$HTML.='<tr>
<td align="center"><hr class="hr" />';
if ($mysql_mep == 'oui')
{
$HTML.='<input type="button" value="Couleur" onClick="choisirCouleur(this.form, \'msg\')" style="color:#006699;cursor:pointer;" \>
<input type="button" value="Gras" onClick="javascript:add_smile(\'[b][/b]\');" style="font-weight:bold;cursor:pointer;" />
<input type="button" value="Italique" onClick="javascript:add_smile(\'[i][/i]\');" style="font-style:italic;cursor:pointer;" />
<input type="button" value="Souligné" onClick="javascript:add_smile(\'[u][/u]\');" style="text-decoration:underline;cursor:pointer;" />
<input type="button" value="Lien" onClick="javascript:add_smile(\'[url=| http://www.votre_lien.com |][/url]\');" style="cursor:pointer;" />';
}
$HTML.='<span id="div_decompte" name="div_decompte" class="decompte"></span>
<br />
<textarea id="msg" class="input" name="msg" rows="10" cols="60"></textarea>
<script>LimiterTextArea(document.form_mess.msg, '.$mysql_car.', div_decompte)</script>
<fieldset><legend align="top">Smiley</legend>';
if ($mysql_smiley == 'oui')
{
include('smiley.inc.php');
}
$HTML.='</fieldset><br />
<input style=";cursor:pointer;" name="Envoyer" type="submit" value="Envoyer" />
<input style=";cursor:pointer;" type="reset" value="Effacer" />
</td>
</tr>
</table>
</form>
</div>';
?>
Et mon script JS qui est appelé dans le <head> de la page HTML :
Code Javascript :
// JavaScript Document
function add_smile(smile) {
var smtexte = form_mess.msg.value + "";
form_mess.msg.value = form_mess.msg.value + smile
}
function valid() // validation du formulaire
{
if (form_mess.nom.value == "")
{
alert('Vous avez oublié votre pseudo !');
return false;
}
if (form_mess.note.value == "")
{
alert('Il faut mettre une note !');
return false;
}
if (form_mess.msg.value == "")
{
alert('Vous avez oublié de mettre un message !');
return false;
}
if (form_mess.msg.value.length<10)
{
alert('Votre message contient moins de 10 caractères !');
return false;
}
return true;
}
var fenetre = null;
function choisirCouleur(formulaire, nom_champ) {
// ouvre une fenêtre afin de sélectionner une couleur, qui sera transmise au champ dont le nom est en argument
// 2 arguments : le formulaire (this.form dans l'appel de la fonction) et le nom du champ
// pour éviter d'ouvrir plusieurs fenêtres simultanées
if (fenetre && !fenetre.closed) fenetre.close();
// passe 2 paramètres à couleurs.html : le nom du formulaire et celui du champ
fenetre = window.open("couleurs.html?" + formulaire.name + "&" + nom_champ, "fenCouleurs", "width=400,height=270,resizable=1");
if (!fenetre.opener) fenetre.opener = self;
}
Voilà ... je ne comprend pas pourquoi quand je clique sur un des boutons Gras, italique, ... ça ne m'affiche pas les balises dans le <textarea>, aidez moi, ou je vais finir par me suicider ! :D
Je tiens à préciser que la dernière fonction JS
(choisirCouleur()) fonctionne ... pourquoi pas les autres ?
PS: si il vous manque quoi que ce soit comme précision n'hésitez pas ! :)