txiki
Messages postés6596Date d'inscriptionmercredi 30 janvier 2002StatutContributeurDernière intervention22 février 2024
-
25 févr. 2012 à 21:06
smart -
4 juin 2015 à 01:09
Bonjour,
Avant toute chose, il faudrait regarder ces deux sites. Site 1: http://editionsgracianne.free.fr/Agenda/Formulaire.php (Login=test, Pass=toto). Si on écrit quelque chose dans le textarea puis Visualiser on voit la mise en forme. OK.
http://editionsgracianne.free.fr/Agenda/Liste_Agenda.php Ici les boutons Suivant et Précédent fonctionnent très bien. L'utilisation du calendrier fonctionne parfaitement.
Site 2: http://saucede.free.fr/index.php?page=Ajout_Sortie&lang=Fr (Login=test, Pass=toto64). Ici pas de preview possible. De plus si on Valide sans preview tout s'ajoute bien dans la table SAUF le contenu du textarea (???).
http://saucede.free.fr/index.php?page=Liste_Sorties&lang=Fr (menu Les activités - Les sorties à venir). Ici le bouton Suivant ne mène nulle part. Et l'utilisation du calendrier ne fonctionne pas du tout. N'hésitez pas à faire vous même des tests dans ces formulaires, les tables seront vidées dans les deux sites (le premier étant d'ailleurs abandonné par son propriétaire).
Cela fait 2 semaines que je cherche mais maintenant je fatigue et suis complètement coincé. Je suis désolé d'etre aussi long mais je vous met le code du formulaire:
<?
session_start(); // Démarrage de la session. A placer obligatoirement avant tout code html. Requière le dossier sessions chez Free.
$_SESSION['connect'] = 0; //initialise la variable 'connect'
if (isset($_POST['mot_de_passe']) AND isset($_POST['login'])) // Si les variables existent
{
$mot_de_passe = $_POST['mot_de_passe'];
$login = $_POST['login']; //On récupère les données envoyées par la méthode POST du formulaire d'identification
}
else // Les variables n'existent pas encore
{
$mot_de_passe = "";
$login = ""; // On crée des variables $mot_de_passe et $login vides
}
if (($mot_de_passe == "toto64" AND $login == "test"))
// Si le mot de passe et le login sont bons (on peut mettre plusieurs utilisateurs. Dans ce cas, ajouter les dans le if).
{
$_SESSION['connect'] = 1; // Change la valeur de la variable connect.
$_SESSION['login'] = $login; // Permet de récupérer le login afin de personnaliser la navigation
// On affiche la page cachée.
?>
<style type="text/css">
<!-- Tailles des polices -->
.tpetit { font-size: x-small; }
.petit { font-size: small; }
.gros { font-size: large; }
.tgros { font-size: x-large; }
</style>
<!-- page des activités proposées cachée que l'on va afficher si le couple login/pass est OK -->
<table align="center" border="0" cellspacing="0" cellpadding="4">
<tr>
<td>
<!-- Pour que les champs obligatoires soient controlés, ils doivent être vierges (pas de value) -->
<form class="formajout" name="Sortie" id="Sortie" action="/Activites/Traitement_Fiche%20Fr.php" onsubmit="return verif(this)" method="post">
<fieldset>
<legend> <strong> Ajouter </strong> une activité à venir </legend>
<p><small> Les champs marqués <span class="red">*</span> sont obligatoires</small><br />
<label for="Titre"> Activité </label>
:<span class="red">*</span>
<input name="Activite" id="Activite" autofocus tabindex="10" type="text" value="" size="80" maxlength="80" />
<input type="hidden" name="Publication" id="Publication" value="<?php $Publication = (date("%d %B %Y à %H:%i:", filemtime($SCRIPT_FILENAME)));?>" ></p>
<label for="Lieu"> Lieu </label>
:<span class="red">*</span> <input name="Lieu" id="Lieu" tabindex="20" type="text" value="" size="40" maxlength="80" />
<label for="Date"></label>
<label for="Date"> Date :
<small>(utiliser le calendrier ci-contre)</small> :</label> <a href="javascript:cal.popup();"><img src="/Activites/img_calendar/cal.gif" width="16" height="16" border="0" alt="Cliquez ici pour choisir la date" title="Cliquez ici pour choisir la date." /></a>
<input name="Date" id="Date" tabindex="30" type="text" size="14" maxlength="25" />
<script language="JavaScript" type="text/javascript">
// créer un objet de calendrier juste après la fermeture d'un "tag de formulaire".
// Spécifier l'élément du formulaire comme le seul paramètre (document.forms['nom_du_formulaire'].elements['nom_d'entrée']);
// Note : vous pouvez avoir autant d'objets de calendrier dont vous avez besoin pour votre application
// elements.['date'] ou "Date" est le name/id du champ du formulaire juste au dessus
var cal = new calendar1(document.forms['Sortie'].elements['Date']);
cal.year_scroll = true;
cal.time_comp = false;
</script></p>
<label for="Depart"> </label>
<p><label for="Depart"> Rendez-Vous </label>
: <input name="Depart" id="Depart" tabindex="40" type="text" value="" size="50" maxlength="80" />
<label for="Participants">
Nombre maxi de participants : </label>
<input name="Participants" id="Participants" tabindex="50" type="text" value="" size="7" maxlength="10" /></p>
<!-- on insère les balises html pour la mise en forme du texte -->
<!-- l'array du zcode doit être égal au script Inject_BBCode.js (ligne 63 et suivantes) -->
<!-- les insert tag du formulaire. La $html dans view.php réencodera ces balises protégées. -->
<p align="center"> <img src="/Modules/Images/Gras.gif" width="25" height="25" class="image_cliquable" alt="Gras" title="Gras" onclick="insertTag('<strong>', '</strong>', 'Comment'); return false;" />
<img src="/Modules/Images/Italique.gif" width="25" height="25" class="image_cliquable" alt="Italique" title="Italique" onclick="insertTag('<em>', '</em>', 'Comment'); return false;" />
<img src="/Modules/Images/Souligne.gif" width="25" height="25" class="image_cliquable" alt="Souligné" title="Souligné" onclick="insertTag('<u>', '</u>', 'Comment'); return false;" />
<img src="/Modules/Images/Barre.gif" width="25" height="25" class="image_cliquable" alt="Barré" title="Barré" onclick="insertTag('<s>', '</s>', 'Comment'); return false;" />
<img src="/Modules/Images/Saut_Ligne.gif" width="25" height="25" class="image_cliquable" alt="Retour chariot" title="Retour chariot" onclick="insertTag('<br />', 'Comment'); return false;" />
<img src="/Modules/Images/Lien.gif" width="23" height="25" class="image_cliquable" alt="Lien" title="Lien" onclick="insertTag('', '', 'Comment', 'lien'); return false;" />
<img src="/Modules/Images/Citation.gif" width="25" height="25" class="image_cliquable" alt="Citation" title="Citation" onclick="insertTag('', '', 'Comment', 'citation'); return false;" />
<select onchange="insertTag ('<taille valeur="' + this.options[this.selectedIndex].value + '">', '</taille>', 'Comment');">
<option value="none" class="selected" selected="selected">Taille</option>
<option value="tpetit">Très petit</option>
<option value="petit">Petit</option>
<option value="gros">Gros</option>
<option value="tgros">Très gros</option>
</select>
<select onchange="insertTag('<couleur valeur="' + this.options[this.selectedIndex].value + '">', '</couleur>', 'Comment');">
<option value="none" class="selected" selected="selected"> Couleur </option>
<option value="noir" style="color:#000000;"> Noir </option>
<option value="gris" style="color:#999999;"> Gris </option>
<option value="rouge" style="color:#FF0000;"> Rouge </option>
<option value="bleu" style="color: #0000FF;"> Bleu </option>
<option value="vert" style="color: #006600;"> Vert </option>
<option value="violet" style="color: #D49FFF;" >Violet</option>
<option value="jaune" style="color:#FCEF3C;" >Jaune</option>
</select>
<!-- Les 2 lignes ci-dessous servent a afficher la chekbox Prévisualisation automatique (décochée par défaut) à coté des boutons de mise en forme -->
<input name="previsualisation" type="checkbox" id="previsualisation" value="previsualisation" />
<label for="previsualisation"> Prévisualisation auto </label>
</p>
<!-- <p align="left">Commentaires:<br /> -->
<textarea onkeyup="preview(this, 'previewDiv');" onselect="preview(this, 'previewDiv');" id="Comment" cols="100" rows="3">Commentaires :</textarea>
<!-- </p> -->
</fieldset>
<div id="previewDiv"></div>
<div id="viewDiv"></div>
<p align="center"><input type="button" id="Visualiser" tabindex="60" value="Visualiser" onclick="view('Comment','viewDiv');" />
<input type="submit" tabindex="70" value="Valider" />
</p>
</pre>
</div>
</form>
</td>
</tr>
</table>
<?php
}
else // le mot de passe n'est pas bon
{
// On affiche la page d'authentification.
?>
<!-- ==== Début de la page d'authentification ==== -->
<table width="100%" align="center" border="0" cellspacing="0" cellpadding="6">
<tr><td colspan="3"><h2 align="center" class="red"> Accès protégé</h2>
<h3 align="center" class="red"> veuillez vous authentifier </h3></td></tr>
<tr><td>
<form method="post" name="authentification" id="authentification">
<fieldset class="vert">
<legend class="admin"> <strong> Ajouter </strong> une activité dans la liste ? </legend>
<p align="center"> <label for="login">Login</label> : <input type="text" name="login" id="login" tabindex="10" /></p>
<script type="text/javascript" language="JavaScript">document.authentification.login.focus();</script>
<p align="center"><label for="mot_de_passe">Password</label> : <input type="password" name="mot_de_passe" id="mot_de_passe" tabindex="20" /></p>
<p align="center"><input type="submit" value="Ajouter" tabindex="21" /></p>
</fieldset>
</form>
</td>
<td>
<form method="post" action="" name="authentification" id="authentification">
<fieldset class="orange"><legend><strong>Modifier</strong> une activité ?</legend>
<p align="center"> <label for="login">Login</label> : <input type="text" name="login" id="login" tabindex="30" /></p>
<script type="text/javascript" language="JavaScript">document.authentification.login.focus();</script>
<p align="center"><label for="mot_de_passe">Password</label> : <input type="password" name="mot_de_passe" id="mot_de_passe" tabindex="40" /></p>
<p align="center"><input type="submit" value="Modifier" tabindex="41" /></p>
</fieldset>
</form>
</td>
<td>
<form method="post" action="" name="authentification" id="authentification">
<fieldset class="red"><legend><strong>Supprimer</strong> une activité ?</legend>
<p align="center"> <label for="login">Login</label> : <input type="text" name="login" id="login" tabindex="50" /></p>
<script type="text/javascript" language="JavaScript">document.authentification.login.focus();</script>
<p align="center"><label for="mot_de_passe">Password</label> : <input type="password" name="mot_de_passe" id="mot_de_passe" tabindex="60" /></p>
<p align="center"><input type="submit" value="Supprimer" tabindex="61" /></p>
</fieldset>
</form>
</td>
</tr>
</table>
<?php
} // Fin du else (si le mot de passe n'était pas bon).
// Fin du code :)
?>
Le code de la page View.php:
<?php
// l'array du zcode doit être égal au script Inject_BBCode.js (ligne 63 et suivantes) et
// les insert tag du formulaire. La $html réencodera ces balises protégées.
function parseZCode($content) {
// Parsage des balises
$zcode = array(
// ''<p>(.+)</p>'isU', // paragraphe
''<strong>(.+)</strong>'isU', // texte gras
''<em>(.+)</em>'isU', // texte italique
''<u>(.+)</u>'isU', // texte souligné
''<s>(.+)</s>'isU', // texte barré
''<br>(.+)</br>'isU', // retour à la ligne
''<lien>(.+)</lien>'isU', // intitulé du lien
''<lien url="(.+)">(.+)</lien>'isU', // url du lien
// ''<image>(.+)</image>'isU', // On n'utilise pas d'image ici
''<citation>(.+)</citation>'isU', // Citation
''<citation nom="(.+)">(.+)</citation>'isU', // Auteur de la citation
''<citation lien="(.+)">(.+)</citation>'isU', // lien de la citation
''<taille valeur="(.+)">(.+)</taille>'isU' // taille du/es mot/s selectionné/s
''<couleur valeur="(.+)">(.+)</couleur>'isU' // taille du/es mot/s selectionné/s
);
$html = array(
// '<p>$1</p>', // paragraphe
'<strong>$1</strong>', // texte gras
'<em>$1</em>', // texte italique
'<u>$1</u>', // texte souligné
'<s>$1</s>', // texte barré
'<br>$1</br>', // retour à la ligne
'<a href="$1">$1</a>', // intitulé du lien
'<a href="$1">$2</a>', // url du lien
// '<img src="$1" alt="Image utilisateur" />', // On n'utilise pas d'image ici
'<br /><span>Citation</span><div>$1</div>', // citation
'<br /><span>Citation : $1</span><div>$2</div>', // Auteur de la citation
'<br /><span><a href="$1">Citation</a></span><div>$2</div>', // lien de la citation
'<span class="$1">$2</span>'
);
$content = htmlspecialchars($content);
$content = preg_replace($zcode, $html, $content);
// parsage des smilies
$smiliesName = array(':magicien:', ':colere:', ':diable:', ':ange:', ':ninja:', '>_<', ':pirate:', ':zorro:', ':honte:', ':soleil:', ':\'\\(', ':waw:', ':\\)', ':D', ';\\)', ':p', ':lol:', ':euh:', ':\\(', ':o', ':colere2:', 'o_O', '\\^\\^', ':\\-°');
$smiliesUrl = array('magicien.png', 'angry.gif', 'diable.png', 'ange.png', 'ninja.png', 'pinch.png', 'pirate.png', 'zorro.png', 'rouge.png', 'soleil.png', 'pleure.png', 'waw.png', 'smile.png', 'heureux.png', 'clin.png', 'langue.png', 'rire.gif', 'unsure.gif', 'triste.png', 'huh.png', 'mechant.png', 'blink.gif', 'hihi.png', 'siffle.png');
$smiliesPath = "http://www.siteduzero.com/Templates/images/smilies/";
for ($i = 0, $c = count($smiliesName); $i < $c; $i++) {
$content = preg_replace(''' . $smiliesName[$i] . ''isU', '<img src="' . $smiliesPath . $smiliesUrl[$i] . '" alt="smiley" />', $content);
}
// Retours à la ligne
$content = preg_replace(''\n'isU', '<br />', $content);
return $content;
}
if (isset($_POST["string"])) {
$content = $_POST["string"];
if (get_magic_quotes_gpc()) {
$content = stripslashes($content);
}
echo parseZCode($content); // Ecriture du contenu parsé.
}
?>
A noter que je ne veux pas de smilies bien que présent dans ce code. S'il n'y a pas de preview je pense que cela vient dette page View.php mais là j'ai de gros doutes. J'ai tellement testé de choses que.....
Peut-être vous faudra-t-il d'autres portions de code et dans ce cas n'hésitez pas à me demander.
Je me suis épuisé, fait de gros breaks pour me calmer mais hélas sans résultats. Une grosse aide me serait d'un ENOOOOOORME secours ! Merci infiniment d'avance.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
$cnx=mysqli_connect("LocalHost","root","me","gestion");
$requete2="UPDATE materiel SET Fournisseur=$prestataire AND Type=$type AND Marque=$marque AND model=$model WHERE Matricule='".$_POST['Mataricule']."'";
$resultat2=mysqli_query($cnx,$requete2);
}
?>
</body>
</html>
txiki
Messages postés6596Date d'inscriptionmercredi 30 janvier 2002StatutContributeurDernière intervention22 février 2024521 5 mars 2012 à 09:54
Bonjour à tous,
J'ai réglé l'affichage du calendrier dans le formulaire de saisie mais le contenu de ce champ (Varchar dans la table) à cause de l'utilisation d'un calendrier en popup ne sécrit pas dans la table. Pourquoi ?
Autre chose: il y a un champ de type datetime dans cette même table mais il n'affiche que des 0000-00-00 00:00:00. J'ai testé plusieurs codes dans un champ caché du formulaire (value="<?php ------- ; ?>"> (je n'ai pas accès au fichier car suis au bureau).
Si j'arrive à régler ces deux choses ce sera déjà un immense espoir pour la suite.
N'hésitez pas à faire vos propres tests (la table sera vidée) sur le site: http://saucede.free.fr/index.php?page=Ajout_Sortie&lang=Fr (Login=test, Pass=toto64). N'essayez pas la preview, ne fonctionne pas et je ne comprends pas du tout pourquoi.
La validation, elle, fonctionne. Vous verrez le résultat dans le menu Les activités/Les activités à venir (mais sans la date du calendrier).
Merci infiniment d'avance.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
4 juin 2015 à 01:09
<head>
<meta content="fr-ma" http-equiv="Content-Language" />
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Modifiez La liste Des Materiaux</title></head>
<body>
<form method="Post" name="Mataricule" action="Modifier.php">
Mataricule:<select name='Matricule' > <br/>
<?php
$cnx=mysqli_connect("localHost","root","me","gestion");
$requete="select * from materiel";
$resultat=mysqli_query($cnx,$requete);
while ($ligne=mysqli_fetch_row($resultat)){
echo"<option value='$ligne[0]'>$ligne[0]</option>";
}
?>
<input type="submit" value="Modifier" name="Modifier">
</form>
<?php
if(isset($_POST["Modifier"])){
$requete="SELECT*FROM materiel WHERE Mataricule='".$_POST['Mataricule']."'";
$resultat=mysqli_query($cnx,$requete);
if($resultat) {
$coord=mysqli_fetch_array($resultat);
echo"
Matricule Materiel:<input name='matricule' type='text' style='width: 170px' value='$coord[0]' disabled />
Marque Materiel: <input type='text' value='$coord[1]' name='Marque' >
Model Materiel: <input type='text' value='$coord[2]' name='Model' >
Prestataire: <input type='text' value='$coord[3]' name='prestataire' >
Type Materiel: <input type='text' value='$coord[4]' name='type' >
Qte Entrée: <input type='text' value='$coord[5]' name='Entree' disabled>
Qte Sortie: <input type='text' value='$coord[6]' name='Sortie' disabled>
Qte En Stock:<input type='text' value='$coord[7]' name='Stock' disabled>
</span>
<input type='reset' value='Annuler' name='effacer'> <input type='submit' value='Ajouter' name='envoyer'>
";
}
$marque=$_POST["marque"];
$model=$_POST["model"];
$prestataire=$_POST["prestataire"];
$type=$_POST["type"];
$cnx=mysqli_connect("LocalHost","root","me","gestion");
$requete2="UPDATE materiel SET Fournisseur=$prestataire AND Type=$type AND Marque=$marque AND model=$model WHERE Matricule='".$_POST['Mataricule']."'";
$resultat2=mysqli_query($cnx,$requete2);
}
?>
</body>
</html>