supertatane80
Messages postés23Date d'inscriptionmercredi 7 juin 2006StatutMembreDernière intervention12 juillet 2006
-
3 juil. 2006 à 10:35
supertatane80
Messages postés23Date d'inscriptionmercredi 7 juin 2006StatutMembreDernière intervention12 juillet 2006
-
4 juil. 2006 à 14:10
Bonjour voila mon script le probleme quand je clique sur rechercher ça affiche les informations sur la meme page alors que moi je veux que ça l'affiche dans une nouvelle popup. ça marche quand il y a un href mais avec un bouton j'arrive pas. Merci de votre aide
<?
//script de connexion à la base
require_once('../connexion.php');
//insertion du code de vérification d'autorisation d'accès
include "../verif_session.php";
//recuperation de l'année
$annee= date('Y');
$req="select * from mission";
$res=executer($req);
?>
<HTML>
<HEAD>
<TITLE>Choix annee et chapitre</TITLE>
<script language="Javascript">
<!--
function ouvreFenetre(page) {
var objForm = document.forms[0];
objForm.target = "monpop";
window.open(page, "monpop", "scrollbars=no,menubar=yes,toolbar=no,resizable=no,width=screen.availWidth,height=screen.availHeight");
}
function Controle()
{
if(document.formulaire.annee.value=='') // 1
{
alert('Le champ annee ne peut pas rester vide !');
document.formulaire.annee.focus();
}
else if(isNaN(document.formulaire.annee.value)) // 2
{
alert('Le champ annee ne peut être que numérique !');
document.formulaire.Nom.focus();
}
else if(document.formulaire.annee.value.length>4) // 3
{
alert('Le champ annee ne peut pas excéder 4 chiffres !');
document.formulaire.annee.focus();
}
else
{
document.formulaire.method = "POST";
document.formulaire.action = "visualiser_type.php";
document.formulaire.submit();
}
}
// -->
</script>
</HEAD>
<center>
Choix annee et chapitre
<form name =\"formulaire\" onSubmit=\"javascript:ouvreFenetre('visualiser_type.php')\">
----
annee de déplacement,
>,
----
type de mission,
<select size="3" name="mission">
<?
while ($ligne = mysql_fetch_array($res))
{
echo '<option value="'.$ligne['code'].'">'.$ligne['libelle'].'</option>
';
}
?>
</select>,
PROTECTIONNISTE
Messages postés67Date d'inscriptionjeudi 30 janvier 2003StatutMembreDernière intervention23 septembre 20081 4 juil. 2006 à 13:55
remplace la variable page par celle ci :
page=validation+annee+"&mission="+document.formulaire.mission.value;
Tu récupére anne et mission
voilà sinon je penses pas qu'il soit possible de récupérer via POST avec cette methode car ce n'est plus vraiment le formulaire qui valide ... enfin je dis ça mais bon c'est peut être faisable.
supertatane80
Messages postés23Date d'inscriptionmercredi 7 juin 2006StatutMembreDernière intervention12 juillet 2006 4 juil. 2006 à 14:10
Je te remercie de ton aide, je vais regarder si je trouve avec la methode post mais cela me suffit car je n'ai que max 3 parametres sinon pour un autre parametre il suffit de faire: page=validation+annee+"&mission="+document.formulaire.mission.value+"
&organisme="+document.formulaire.organisme.value;
PROTECTIONNISTE
Messages postés67Date d'inscriptionjeudi 30 janvier 2003StatutMembreDernière intervention23 septembre 20081 3 juil. 2006 à 12:38
Voila c'est plus pro comme ça et ça fonctionne
<?
//script de connexion à la base
require_once('../connexion.php');
//insertion du code de vérification d'autorisation d'accès
include "../verif_session.php";
//recuperation de l'année
$annee= date('Y');
$req="select * from mission";
$res=executer($req);
?>
<HTML>
<HEAD>
<TITLE>Choix annee et chapitre</TITLE>
<script language="Javascript">
<!--
function Controle(page
)
{
if(document.formulaire.annee.value.length==4) {
window.open(page, "monpop", "scrollbars=no,menubar=yes,toolbar=no,resizable=no,width=screen.availWidth,height=screen.availHeight");
}
else { alert("Remplissez l'année de déplacement") }
}
// -->
</script>
PROTECTIONNISTE
Messages postés67Date d'inscriptionjeudi 30 janvier 2003StatutMembreDernière intervention23 septembre 20081 3 juil. 2006 à 19:16
En regardant tu aurais pu trouver l'erreur j'ai fais un oubli de guillemet simple :
<form name="formulaire" onSubmit="javascript:Controle('visualiser_type.php');">
PROTECTIONNISTE
Messages postés67Date d'inscriptionjeudi 30 janvier 2003StatutMembreDernière intervention23 septembre 20081 4 juil. 2006 à 10:39
les event.keycode permet de vérifier que ce ne sont que des chiffres qui soient entrées dans le inpu (essayes tu ne peux entrée que 4 carateres au maximum et que des chiffres,
Penses tout de même à vérifier ça du coté PHP avant de faire ton appel dans la base de donnée ça éviteras des injections (Securité avant tout), en fait tu refais la même verif coté php ta date ne fais pas plus de 4 caracteres et que tout soit des chiffres.
Dans le fichier visualiser_type, il ne recupère pas l'année, elle ne doit pas être transmise?
Tu débute en JS et PHP? donc sinon tu as juste à ajouter la methode POST ou GET a ta balise form
<form name="formulaire" method="POST" action="javascript:Controle('visualiser_type.php');">
et sur 'visualiser_type.php' tu réceptionne avec la même methode : $_POST[annee]
supertatane80
Messages postés23Date d'inscriptionmercredi 7 juin 2006StatutMembreDernière intervention12 juillet 2006 4 juil. 2006 à 11:11
Non en php je me débrouille mais pas trop en JS, en fait avant de mettre la vérification de la date ça marchait à condition d'entrer une date valide mais depuis non. Pour ce qui est de la méthode POST, je connais et je l'avais rajouté mais j'ai le message Undefined index:annee au niveau de la fenetre qui s'ouvre. Qd j'enleve les controle et que je mets juste ça <form name="formulaire" method="POST" action="visualiser_type.php"> ça marche mais pas de controle!