Passarinho44 conseil
RésoluSi t'est par la fait moi signe ! merci d'avance
Configuration: Windows XP Internet Explorer 7.0
71 réponses
Un problème récurrent consiste à relier des interventions à des tickets et à gérer le paramètre NumeroTicket dans les liens et formulaires, ce qui provoque des erreurs et des pertes de données. La meilleure piste consiste à ajouter une clé étrangère sur NumeroTicket dans tb_intervention, référence tb_ticket et cascade la suppression, afin de garantir l’intégrité des liens entre les interventions et les tickets. Par ailleurs, des ajustements dans les formulaires et les liens doivent assurer que NumeroTicket est correctement transmis via GET ou POST lors de l'ajout ou de la modification d'une intervention.
-
ContributeurJ'ai fait un petit champs de recherche mais c'était sur un seul champs de la base de données donc vraiment un truc super simple ...
Mais un vrai moteur de recherche non pas encore.
Je devrai surement en faire un bientot mais pas pour l'appli sur laquelle je suis là.
Disons que sur un seul champ de la table (genre si l'utilisateur fait une recherche juste sur les noms de ticket) c'est pas très dur.
Mais si tu veux que la recherche se fasse aussi bien sur le nom de ticket que sur le client, etc oui ça doit devenir un peu dur.
Pour la recherche avancée entre deux dates, il existe BETWEEN en SQL qui permet de rechercher entre deux valeur
(par exemple : SELECT * FROM tb_ticket WHERE DateTicket BETWEEN 2009-01-25 AND 2009-02-05 cette requete te retournera tous les tickets entre le 25/01/2009 et le 02/02/2009 )
Donc ça devrait pas être trop dur ça ! :) -
Contributeurlol OK.
Ben sinon tu as NetBeans for PHP qui est un peu moins puissant mais plutôt pas mal (toujours mieux que notepad++)
C'est cool si tu n'as plus ton problème :)-
Oui la sa va sa avance plutot bien depuis qu'on a reussi a debloqué les redirection.
Ensuite je vais me lancé dans un moteur de recherche avec plusieur champs pour une bonne precision (genre recherché un ticket de tel date comportant tel mo ..... lool )
j'ai jamais fait sa !
je pensse que je vais galeré !! -
Contributeur@s_sniperPour les dates regarde le post que j'ai mis sur ta discussion sur l'affichage d'un champ avec la date!
Ca pourra surement t'aider :)
Sans vouloir te faire peur ... Oui je pense que tu vas galérer :) -
@Passarinho44loool
oui merci mais j'ai pas trop compris! je t'est relaissé un messaga va voir!
Ok C'est si dur que sa ? lool le moteur de recherche alalal t'en a deja fait toi ?
-
-
Contributeur"mais lorsque je modifie la modif ne se fait pas sa vien d'ou d'aprés toi ?"
Je ne comprends pas, c'est quoi qui ne se fait pas?
Tu veux dire que quelque soit le statut du ticket c'est "en cours qui est sélectionné quand tu vas dessus?
Si c'est ça c'est normal, il faudrait que tu changes avec :
<select name="StatutTicket" id="StatutTicket" >
<option value="En cours" <?php if ( $donnees['StatutTicket'] == "En cours" ) echo 'selected' ?> >En cours</option>
<option value="Terminé" <?php if ( $donnees['StatutTicket'] == "Terminé" ) echo 'selected' ?>>Terminé</option>
</select>
PS : tu avais mis deux fois le name="StatutTicket" ^^
Tu n'utilises pas Eclipse for PHP sinon il te l'aurait dit ! ;p -
Je me retrouve sur un petit probleme je suis sur mes petit detail :
et dans ticket lorsque je modifie le ticket
dans statut du ticket j'ai mis sa :
<tr> <td align="right">Statut du ticket : </td> <td><select name="StatutTicket" id="StatutTicket" name="StatutTicket"> <option value="En cours">En cours</option> <option value="Terminé">Terminé</option> </select></td> </tr>
mais lorsque je modifie la modif ne se fait pas sa vien d'ou d'aprés toi ? -
ContributeurAh okkkkkk ben fallait me mettre ça tout de suite ;)
Remplace ta première liste déroulante par ça :
<select id="NomClient" name="NomClient" onchange="location.href = 'Principal.php?page=2&NomClient=' + this.value;">
<option >Choisis un Client</option>
<?php
if ( isset($_GET['NomClient']) ) {
$GetNomClient = $_GET['NomClient'];
} else {
$GetNomClient = "";
}
$SQL = "SELECT * FROM tb_client";
$res = mysql_query($SQL);
while($NomClient=mysql_fetch_array($res)) {
echo "<option value='" . $NomClient['NumeroClient'] ."'";
if ($GetNomClient == $NomClient['NumeroClient']) echo 'selected="selected"';
echo " >".$NomClient["AbregeClient"]."</option>";
}?>
</select>
Le problème était que à la première utilisation le $_GET['NomClient'] n'existait pas encore ... -
ContributeurVoilà ma page au complet ...
<?php
include("connexion.php");
?>
<?php
session_start(); // On relaye la session
if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<center>
<h2>Creation d'un nouveau ticket</h2>
<form action="?page=11" method="POST">
<fieldset id="fieldset_creation_ticket" style="width: 700px;">
<legend><h4>Création d'un nouveau ticket</h4></legend>
<table>
<tr>
<td align="right">Nom du client : </td>
<td><select id="NomClient" name="NomClient" onchange="location.href = 'Principal.php?page=2&NomClient=' + this.value;">
<option >Choisis un Client</option>
<?php
$SQL = "SELECT * FROM tb_client";
$res = mysql_query($SQL);
while($NomClient=mysql_fetch_array($res)) {
echo "<option value='" . $NomClient['NumeroClient'] ."'";
if ($_GET['NomClient'] == $NomClient['NumeroClient']) echo 'selected="selected"';
echo " >".$NomClient["AbregeClient"]."</option>";
}?>
</select>
</td>
</tr>
<tr>
<td align="right">Interlocuteur du client : </td>
<td><select id="InterlocuteurClient" name="InterlocuteurClient">
<?php
if ( isset($_GET['NomClient'] ) and $_GET['NomClient'] != "" ) {
$SQL = "SELECT * FROM tb_interlocuteur WHERE NumeroClient ='" . $_GET['NomClient'] . "'";
$res = mysql_query($SQL);
while($NomInterlocuteur=mysql_fetch_array($res)) {
echo "<option value='" . $NomInterlocuteur['NumeroInterlocuteur'] ."'>".$NomInterlocuteur["NomInterlocuteur"]."</option>";
}
} else {
echo '<option value="">Choisis un client</option>';
}
?>
</select>
<td>
</tr>
<tr>
<td align="right">Date du ticket : </td>
<td><input type="text" id="DateTicket" name="DateTicket"/></td>
</tr>
<tr>
<td align="right">Heure du ticket : </td>
<td><input type="text" id="HeureTicket" name="HeureTicket"/></td>
</tr>
<tr>
<td align="right">Nom du récepteur : </td>
<td><input type="text" id="RecepteurTicket" name="RecepteurTicket" value="<?php echo $_SESSION['TrigrammeOperateur']; ?>" /></td>
</tr>
<tr>
<td align="right">Sujet du ticket : </td>
<td><textarea id="SujetTicket" name="SujetTicket" cols="30" rows="4"></textarea></td>
</tr>
<tr>
<td align="right">Affecté à :</td>
<td><select type="text" id="AffectationTicket" name="AffectationTicket">
<?php
include ("connexion.php");
$SQL = "SELECT TrigrammeOperateur FROM tb_operateur";
$res = mysql_query($SQL);
while($AffectationTicket=mysql_fetch_array($res)) {
echo "<option>".$AffectationTicket["TrigrammeOperateur"]."</option>\n";}?>
</td>
</tr>
<td colspan="2" align="center"><input type="submit" value="Créer le ticket"/>
<td colspan="2" align="center"><input name="reset" type=reset value="Effacer le contenu du formulaire"/>
</table>
</fieldset>
</form>
</center>
<p align="center"><a href="index.php?erreur=logout"><strong>Vous déconnecter</strong></a></p>
<script language="javascript">
var ta = document.getElementById("SujetTicket");
ta.onmouseleave = ta.onkeydown=function(){
if(this.value.length>30){
alert("Attention 30 cacactères maxi");
}
}
ta.onchange=function(){
if(this.value.length>30){
alert("le texte va être ramené à 30 caractères");
this.value = this.value.substring(0,30);
}
}
</script>-
Le probleme persist :S :
quand je clique sur la 1er liste deroulante des clients sa m'affiche sa
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>ALF
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>AG2R
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>ARMONY
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>MT
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>MAIRIE CRAN
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>NOUS AUSSI
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>FALLON
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>VERDANNET
Notice : Undefined index: NomClient in F:\Program Files\wamp\www\test\pages\NouveauTicket.php on line 32>MULTIPAP
ensuite je choisis un client et sa redevient normal :s
-
-
ContributeurEuh ... J'avoue que j'ai pas compris ton bug ... C'est où qu'il y a des undefined?
Moi quand je clique sur nouveau ticket j'ai pas d'erreur ...
Le message que tu as eu ça veut dire que tu as une clé primaire qui a deux fois la même valeur ...
Si tu as une clé primaire, il fait qu'elle soit auto-incrémenté sinon tu vas souvent avoir des problèmes :s-
Oué ba j'ai repris excatement le tien et sa me met une ptit bug sur la liste deroulante nom client il mdi indefined pour tous les client a cette ligne :
if ($_GET['NomClient'] == $NomClient['NumeroClient']) echo 'selected';
et kan je chosis un client sa me debug automatiquement...
merci pr le message "duplicate.....
-
-
ContributeurBon allez, je te file ma page NouveauTicket.php ;)
Ca fonctionne normalement :)
<?php
include("connexion.php");
?>
<?php
session_start(); // On relaye la session
if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<center>
<h2>Creation d'un nouveau ticket</h2>
<form action="?page=11" method="POST">
<fieldset id="fieldset_creation_ticket" style="width: 700px;">
<legend><h4>Création d'un nouveau ticket</h4></legend>
<table>
<tr>
<td align="right">Nom du client : </td>
<td><select id="NomClient" name="NomClient" onchange="location.href = 'Principal.php?page=2&NomClient=' + this.value;">
<option>Choisis un Client</option>
<?php
$SQL = "SELECT * FROM tb_client";
$res = mysql_query($SQL);
while($NomClient=mysql_fetch_array($res)) {
echo "<option value='" . $NomClient['NumeroClient'] ."'>".$NomClient["AbregeClient"]."</option>";
}?>
</select>
</td>
</tr>
<tr>
<td align="right">Interlocuteur du client : </td>
<td><select id="InterlocuteurClient" name="InterlocuteurClient">
<?php
if ( isset($_GET['NomClient'] ) and $_GET['NomClient'] != "" ) {
$SQL = "SELECT * FROM tb_interlocuteur WHERE NumeroClient ='" . $_GET['NomClient'] . "'";
$res = mysql_query($SQL);
while($NomInterlocuteur=mysql_fetch_array($res)) {
echo "<option value='" . $NomInterlocuteur['NumeroInterlocuteur'] ."'>".$NomInterlocuteur["NomInterlocuteur"]."</option>";
}
} else {
echo '<option value="">Choisis un client</option>';
}
?>
</select>
<td>
</tr>
<tr>
<td align="right">Date du ticket : </td>
<td><input type="text" id="DateTicket" name="DateTicket"/></td>
</tr>
.... Le reste ne change pas ...-
-
Contributeur@sniperAh oui dsl j'avais pas fait gaffe à ça ^^
Remplace la PREMIERE liste déroulante par ça :
<select id="NomClient" name="NomClient" onchange="location.href = 'Principal.php?page=2&NomClient=' + this.value;">
<option>Choisis un Client</option>
<?php
$SQL = "SELECT * FROM tb_client";
$res = mysql_query($SQL);
while($NomClient=mysql_fetch_array($res)) {
echo "<option value='" . $NomClient['NumeroClient'] ."'";
if ($_GET['NomClient'] == $NomClient['NumeroClient']) echo 'selected';
echo " >".$NomClient["AbregeClient"]."</option>";
}?>
</select>
Ca va aller mieux ^^ -
@Passarinho44j'ai encore un petit beugue lorsque je clique sur nouveau ticket sa me met le 1er champ en grand dedans ya plein de indefined et et le nom du clien je clique sur le 1er et sa redevien normal c'est possible d'evité ce ptit bug ?
p.s: sais tu ce que veux dire exactement :
Duplicate entry 'lli' for key 'PRIMARY'( parcke que je creer une page qui va gerer les utilisateur et lors de mon l'enregistrement d'un nouveau utilisateur sa me met sa ) -
@sniperje dois y aller je te remercie beaucoup!!
Merci grace a toi j'apprend plein de chose!!
alléé passe une bonne soirée et peut etre a demain!!
;-)))
-
-
ContributeurQuand je supprime ça revient à la page de choix d'un client mais le client est déjà choisi (toujours le même)
Voilà le script de création de ma table tb_interlocuteur :
-- phpMyAdmin SQL Dump
-- version 2.11.0
-- https://www.phpmyadmin.net/-
Merci c'est bon sa marche!!! ;-)
Je voudrais de demandé autre chose si sa te derange pas !!
Tu vois dans la page "nouveau ticket" le premier champ qui est nom du client en liste deroulante je voudrais que quand on clique sur un client de cet liste le champ en dessous qui est interlocuteur affiche tous les interlocuteur qui correspond a ce client saisie. ( et on choisie dans cette 2eme liste l'interlocuteur)
j'essaye de faire mais c 'est pas trop sa!! :s
Si t'est pas trop occupé sinon je me debrouillerais
Merci d'avance
-
-
Contributeur<?php
if (isset($_POST['suppression']))
{
foreach($_POST as $nom => $val) // Pour chaque valeur venant du formulaire
{
"$nom $val<br />";
if(substr($nom,0,6)=="suppr_") // Si c'est une case à cocher de suppression
{
$cle = substr($nom,6); //On enlève "suppr_" du nom de la checkbox, on a donc indexTicket_NumeroClient dans $cle
$NumeroInterlocuteur = substr($cle,0,strpos($cle,"_")); // On récupère l'index : du premier caractère jusqu'au caractère avant le "_"
$temp_pos = strpos($cle,"_")+1;// On calcule la position du premier caractère après le "_"
$NumeroClient = substr($cle,$temp_pos);// On récupère les caractères se trouvant après le "_"
echo "DELETE FROM tb_interlocuteur WHERE NumeroInterlocuteur=$NumeroInterlocuteur and NumeroClient=$NumeroClient<br />";
mysql_query("DELETE FROM tb_interlocuteur WHERE NumeroInterlocuteur=$NumeroInterlocuteur and NumeroClient='$NumeroClient' "); // Suppression
}
}
}
?>
<form method="POST" action="?page=7&NumeroClient=<?php echo $GetNumeroClient?>&client=<?php echo $GetNumeroClient?>">
<fieldset id="fieldset_Intervention" style="width: 700px;">
<legend><h4>Gestion des Interlocuteur</h4></legend>
<table border="1"><tr>
<th>NumeroInterlocuteur</th>
<th>NumeroClient</th>
<th>NomInterlocuteur</th>
<th>PrenomInterlocuteur</th>
<th>EmailInterlocuteur</th>
<th>TelInterlocuteur</th>
<th>EmailInterlocuteurCC</th>
<th>Modifier</th>
<th>Supprimer</th>
</tr>
<?php
$requete = "SELECT * FROM tb_interlocuteur WHERE NumeroClient = '" .$GetNumeroClient. "' ORDER BY NomInterlocuteur ASC";
$retour = mysql_query($requete);
while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les résultats
{
?>
<tr>
<td><?php echo $donnees['NumeroInterlocuteur']; ?></td>
<td><?php echo $GetNumeroClient; ?></td>
<td><?php echo $donnees['NomInterlocuteur']; ?></td>
<td><?php echo $donnees['PrenomInterlocuteur']; ?></td>
<td><?php echo $donnees['EmailInterlocuteur']; ?></td>
<td><?php echo $donnees['TelInterlocuteur']; ?></td>
<td><?php echo $donnees['EmailInterlocuteurCC']; ?></td>
<td><a href="?page=20&interlocuteur=<?php echo $donnees['NumeroInterlocuteur'];?>&NumeroClient=<?php echo $GetNumeroClient ?>">Modifier</a></td>
<?php
echo "<td><input type='checkbox' name='suppr_".$donnees["NumeroInterlocuteur"]."_".$donnees["NumeroClient"]."'/></td>";
?>
</tr>
<?php
} // Fin de la boucle
?>
</table>
<P align=left></p>
<center><input name="suppression" type="submit" value="Supprimer"></center><br><br>
</fieldset>
</form>
<?php
}
?> -
ContributeurBon ben je viens de créer le champs NumeroInterlocuteur et de le mettre en clé primaire, après la suppression pose plus de soucis !
Le soucis pour l'instant c'était qu'il n'y avait pas de NumeroIntervention de défini ...-
De NumeroInterlocuteur tu veux dire intervention tous marche!!
Ah bon sa marche ?
mais moi j'ai creer depuis le debut NumeroInterlocuteur dans ma table tb_interlocuteur
et elle est bien souligné (clé primaire)
et toi quand tu supprime sa reviens sur quelle page ?
moi je supprime (mm si sa marche pas) sa me remet sur la page7 simplement avec "choisisser le client a modifier".
pas toi ?
je peux voir ton code a partir de stp :
<?php
if (isset($_POST['suppression']))
{
.....
....
....
.....
-
-
ContributeurBah c'est cool c'est que tu comprends bien tout ce que tu fais ! :)
Pour la suppression j'avoue que je ne sais pas ... A part que la requete ne risquait pas de s'executer vu que le NumeroInterlocuteur n'existait pas ... Maintenant qu'il existe je ne sais pas.
J'avoue que je n'ai pas compris tout ce que fait ta fonction de suppression ^^-
oui on me la passé cette fonction moi je la comprend un bou mais pas tout jtavoue ^^ lol!!
oué pas pas grave je crois que le probleme viens de la
<form method="POST" action="?page=7&NumeroClient=<?php echo $GetNumeroClient?>">
et les isset qu'on a rajouter fau pas les mettre juste au dessus de la fonction suppression ?
-
-
ContributeurRegarde dans ta base, je ne pense pas qu'il le supprime mais plutot qu'il ne l'associe plus à rien .. Non?
fais encore des echo de tes variables genre : $GetNumeroClient, $GetClient, $GetInterlocuteur ...
Et aussi fait un echo de ta requete de modification (pense à mettre la redirection en commentaire pour pouvoir la voir ^^ ) et execute là dans phpmyadmin.
Enfin bref fais le cheminement pas à pas et affichant toutes les variables où tu as des doutes.
C'est comme ça que je débug moi ^^ -
ContributeurBen tu le cré dans phpmyadmin et tu lui met une clé primaire ^^
Oui dans ton :
<form action="Principal.php?page=21&client=<?php echo $donnees['NumeroClient'];?>&NumeroClient=<?php echo $donnees['NumeroClient']; ?>" method="POST">
Faut que tu rajoutes : &interlocuteur=<?php echo $_GET['interlocuteur'] ?>
Enfin tu récupères le numéro de l'interlocuteur quoi ^^ Après tu vois comment tu as fait pour remplir les champs du formulaire de modif de l'interlocuteur ... Ben là tu fais pareil ^^-
Ba oui il est bien créer quand meme lol !! je l'est créer avant de faire tous sa et c'est une clé primaire aussi!
Mais j'ai rajouter interlocuteur $_get ['interlocuteur']
il sait de quelle interlocuteur on parle mais quand je clique sur modifier il me le modifie pas il me le supprime loool !!
bisard!
-
-
ContributeurBen dans le script que tu m'as envoyé, NumeroInterlocuteur n'existe pas ... :s
Sinon ben je vois pas d'erreur dans le lien alors je pencherais pour la page de miseAJourInterlocuteur ...
Mets la redirection en commentaire, affiche les variables $GetNumeroClient et $GetClient avec un echo, tu verras si le problème vient de là.
Si le problème vient pas de là, essaie d'afficher la requete puis de l'executer dans phpmyadmin.
Sinon ben ... J'avoue que je vois pas ce que ça pourrait être d'autre :s-
aH Bon comment ca il existe pas!
on fait comment pour le faire existé alors lol !!!
ca c 'est ma page mise a jourinterlocuteur :
<?php require_once('connexion.php'); if ( isset($_GET['NumeroClient']) ) { $GetNumeroClient = $_GET['NumeroClient']; } else { $GetNumeroClient = ""; } if ( isset($_GET['client']) ) { $GetClient = $_GET['client']; } else { $GetClient = ""; } $NumeroClient = $_Get['client']; $NumeroInterlocuteur = $_GET['interlocuteur']; $NomInterlocuteur = $_POST['NomInterlocuteur']; $PrenomInterlocuteur = $_POST['PrenomInterlocuteur']; $EmailInterlocuteur = $_POST['EmailInterlocuteur']; $TelInterlocuteur = $_POST['TelInterlocuteur']; $EmailInterlocuteurCC = $_POST['EmailInterlocuteurCC']; $sql = "UPDATE`hotlinecc`.`tb_interlocuteur` SET NumeroClient='".$NumeroClient. "',NomInterlocuteur='" . $NomInterlocuteur. "',PrenomInterlocuteur='" . $PrenomInterlocuteur . "',EmailInterlocuteur='" . $EmailInterlocuteur . "',TelInterlocuteur='" . $TelInterlocuteur . "',EmailInterlocuteurCC='" . $EmailInterlocuteurCC . "' WHERE NumeroInterlocuteur='" . $NumeroInterlocuteur . "'"; $res = mysql_query($sql); if ($res) { print '<script language="javascript"> alert("Votre interlocuteur à bien été modifier"); location.href = "Principal.php?page=7&NumeroClient=' . $GetNumeroClient . '&client=' . $GetClient .'" </script>'; } else { echo "Erreur !!"; } ?>
Enfette y a probleme il me met numeroclient=12&client=12 mais interlocuteur il s'est pas de quelle intelocuteur on parle enfette !! c'est ca le probleme il y a un petit truc a rajouté
la ou je te parle j sa dans modifinterlocuteur :<form action="Principal.php?page=21&client=<?php echo $donnees['NumeroClient'];?>&NumeroClient=<?php echo $donnees['NumeroClient']; ?>" method="POST">
si je met celui davan ou meme je rajoute &interlocuteur=<?php echo $donnees['NumeroInterlocuteur']';?>&......
sa me supprime la ligne et sa me recupere pas les donné du form du client au dessus!
-
-
ContributeurNumeroInterlocuteur existe pas dans ta table Interlocuteur et tu l'utilises dans ta requete :s
Et le NumeroClient en clé primaire c'est pas super vu que tu peux avoir plusieurs inerlocuteurs pour un même client donc plusieurs fois la même clé primaire ... :s-
NON nON LOL
je me suis trompé :*
la clé priamaire c'est NumeroInterlocuteur et biensur que si il existe dans ma table tb_interlocuteur.
NumeroClient n'est ici qu'une clé étrangere. comme numeroticket pour les interventions.
Autre chose la j'ai presque reussi a faire toutes les redirection avec les report de toutes les données
l'ajout interlocuteur sa marche, modification client sa marche
mais pour modification interlocuteur j'ai un pti probleme il me refait bien la redirection avec toutes les donnée
saud ce que j'ai modifier sa c'est pas modifier alors qu'avant sa se modifié mais sa fesai mal la redirection la la redirection est parfaite mais la modif ne s'est pas exécuté.
a ton avis Sa vien d'ou du lien de la page modifinterlocuteur :<form action="Principal.php?page=21&client=<?php echo $donnees['NumeroClient'];?>&NumeroClient=<?php echo $donnees['NumeroClient']; ?>" method="POST">
ou de la page miseAjourInterlocuteur interlocuteur ?
Merci ^^
-
-
ContributeurDans nouveauinterlocuteur.php , il faut que tu les mette plus tard les isset() :
<?
include("connexion.php");
?>
<?php
session_start(); // On relaye la session
if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<?php
if ( isset($_GET['NumeroClient']) ) {
$GetNumeroClient = $_GET['NumeroClient'];
} else {
$GetNumeroClient = "";
}
if ( isset($_GET['client']) ) {
$GetClient = $_GET['client'];
} else {
$GetClient = "";
}
?>
<center>
<h2>Enregistrement d'un nouveau interlocuteur</h2>
<form action="Principal.php?page=19&NumeroClient=<?php echo $GetNumeroClient;?>&client=<?php echo $GetClient ?>" method="POST">
<fieldset id="fieldset_creer_client" style="width: 700px;">
<legend><h4>Creation d'un nouveau intelocuteur</h4></legend>
<table>
<tr>
<td align="right">Numero du Client : </td>
<td><input type="text" id="NumeroClient" name="NumeroClient" value="<?php echo $_GET['NumeroClient']; ?>" readonly="readonly" /></td>
</tr>
<tr>
<td><input type="submit" value="Envoyer" />
</tr>
...
Et dans ModificationClient.php, il faut que tu mettes ça au début :
if ( isset($_GET['NumeroClient']) and isset($_GET['client']) ) {
$GetNumeroClient = $_GET['NumeroClient'];
$GetClient = $_GET['client'];
} elseif ( isset($_GET['NumeroClient']) ) {
$GetNumeroClient = $_GET['NumeroClient'];
$GetClient = $_GET['NumeroClient'];
} elseif ( isset($_GET['client']) ) {
$GetClient = $_GET['client'];
$GetNumeroClient = $_GET['client'];
} else {
$GetClient = "";
$GetNumeroClient = "";
}-
Oui c'est bon je viens de trouvé la solution a l'instem !! merci
je suis pour les autre pages ^^!!
Est ce que j'ai une faute la dedans concernant la suppression car elle ne fonctionne pas j'ai vu ligne par ligne je ne trouve pas!!
<?php if (isset($_POST['suppression'])) { foreach($_POST as $nom => $val) // Pour chaque valeur venant du formulaire { "$nom $val<br />"; if(substr($nom,0,6)=="suppr_") // Si c'est une case à cocher de suppression { $cle = substr($nom,6); //On enlève "suppr_" du nom de la checkbox, on a donc indexTicket_NumeroClient dans $cle $NumeroInterlocuteur = substr($cle,0,strpos($cle,"_")); // On récupère l'index : du premier caractère jusqu'au caractère avant le "_" $temp_pos = strpos($cle,"_")+1;// On calcule la position du premier caractère après le "_" $NumeroClient = substr($cle,$temp_pos);// On récupère les caractères se trouvant après le "_" "DELETE FROM tb_interlocuteur WHERE NumeroInterlocuteur=$NumeroInterlocuteur and NumeroClient=$NumeroClient<br />"; mysql_query("DELETE FROM tb_interlocuteur WHERE NumeroInterlocuteur=$NumeroInterlocuteur and NumeroClient='$NumeroClient' "); // Suppression } } } ?> <form method="POST" action="?page=7&NumeroClient=<?php echo $GetNumeroClient?>"> <fieldset id="fieldset_Intervention" style="width: 700px;"> <legend><h4>Gestion des Interlocuteur</h4></legend> <table border="1"><tr> <th>NumeroInterlocuteur</th> <th>NumeroClient</th> <th>NomInterlocuteur</th> <th>PrenomInterlocuteur</th> <th>EmailInterlocuteur</th> <th>TelInterlocuteur</th> <th>EmailInterlocuteurCC</th> <th>Modifier</th> <th>Supprimer</th> </tr> <?php $retour = mysql_query("SELECT * FROM tb_interlocuteur WHERE NumeroClient = '" .$GetNumeroClient. "'ORDER BY NumeroInterlocuteur ASC"); while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les résultats { ?> <tr> <td><?php echo $donnees['NumeroInterlocuteur']; ?></td> <td><?php echo $GetNumeroClient; ?></td> <td><?php echo $donnees['NomInterlocuteur']; ?></td> <td><?php echo $donnees['PrenomInterlocuteur']; ?></td> <td><?php echo $donnees['EmailInterlocuteur']; ?></td> <td><?php echo $donnees['TelInterlocuteur']; ?></td> <td><?php echo $donnees['EmailInterlocuteurCC']; ?></td> <td><a href="?page=20&interlocuteur=<?php echo $donnees['NumeroInterlocuteur'];?>&NumeroClient=<?php echo $GetNumeroClient ?>">Modifier</a></td> <?php echo "<td><input type='checkbox' name='suppr_".$donnees["NumeroInterlocuteur"]."_".$donnees["NumeroClient"]."'/></td>"; ?> </tr> <?php } // Fin de la boucle ?> </table> <P align=left></p> <center><input name="suppression" type="submit" value="Supprimer"></center><br><br> </fieldset> </form> <?php } ?>
-
-
ContributeurDe rien ^^
Bon courage pour la suite ! =)
Et si tu as encore des soucis n'hésites pas (mais la prochaine fois crée toi un compte et envoie moi un message perso avec le titre de ta discussion parce que c'est pas sur que je verrai si tu poste un message ^^ )-
okok pas de probleme! merci
Enfette c'est le meme systeme mais pour les client-interlocuteur
genre je modifie mon interlocuteur je clique sur modifier sa me renvoi sur la page "miseAjourClient.php" c'est bien ce que je veux mais avec le formulaire deja ouver comme si on avait deja choisie le client.
J'ai repris le meme modele, et ca me m'afficher bien l url numeroclient 1 lorsque je modifie un interlocuteur et que je clique sur modifier mais il faut que je reclique sur le nom du client de la liste déroulante alors que le numeroclient s'affiche bien.
Sa pourrait venir d'ou ce petit probleme ? ta une idée ? -
@sniperBon je t'écris en anonyme parce que j'arrive plus à envoyer de messages avec mon compte je sais pas pourquoi ... :s
Oui je pense savoir d'où vient le problème :
A chaque fois que tu met NumeroClient dans tes liens, tes action de form, tes redirections, etc, il faut aussi que tu récupères client (ce qui correspond au choix dans la liste déroulante)
Donc comme tu as mis :
if ( isset($_GET['NumeroClient']) ) {
$GetNumeroClient = $_GET['NumeroClient'];
} else {
$GetNumeroClient = "";
}
Tu met AUSSI (tu ne remplaces pas, tu met en plus )
if ( isset($_GET['client']) ) {
$GetClient = $_GET['client'];
} else {
$GetClient = "";
}
Et après dans tes liens, comme tu as mis :
&NumeroTicket=<?php echo $GetNumeroClient ?>
Tu ajoutes après &client=<?php echo $GetClient ?>
Voilà fais ça partout où il intervient et tu me diras après. -
@Passarinho44Salut
La je suis en train de teste ce que tu ma laissé hier, sa me renvoi bien sur la bonne page avec le form ouvert et tou nikel sans les donnees, la je fais le test que pour l'ajout d' un nouvelle intelocuteur apré je ferais pour modification d'un client, modification d'un interlocuteur.
pour l'ajout d'un nouveau interlocuteur j'ai sa :
donc le lien qui permet l'ajout :Pour creer un nouvelle interlocuteur<a href="Principal.php?page=18&NumeroClient=<?php echo $GetNumeroClient; ?>&client=<?php echo $GetClient ?>">cliquer ici</a>
j'ai dans le formulaire "nouveauinterlocuteur.php" j'ai sa :<? include("connexion.php"); if ( isset($_GET['NumeroClient']) ) { $GetNumeroClient = $_GET['NumeroClient']; } else { $GetNumeroClient = ""; } if ( isset($_GET['client']) ) { $GetClient = $_GET['client']; } else { $GetClient = ""; } ?> <?php session_start(); // On relaye la session if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?) // ici les éventuelles actions en cas de réussite de la connexion } else { header("Location:index.php?erreur=intru"); // redirection en cas d'echec } ?> <center> <h2>Enregistrement d'un nouveau interlocuteur</h2> <form action="Principal.php?page=19&NumeroClient=<?php echo $GetNumeroClient;?>&client=<?php echo $GetClient ?>" method="POST"> <fieldset id="fieldset_creer_client" style="width: 700px;"> <legend><h4>Creation d'un nouveau intelocuteur</h4></legend> <table> <tr> <td align="right">Numero du Client : </td> <td><input type="text" id="NumeroClient" name="NumeroClient" value="<?php echo $_GET['NumeroClient']; ?>"readonly /></td> </tr>
........
Et dans intelocuteur.php ( ce qui permet lenvoie insert into) : j'ai sa
<?php require_once('connexion.php'); if ( isset($_GET['NumeroClient']) ) { $GetNumeroClient = $_GET['NumeroClient']; } else { $GetNumeroClient = ""; } if ( isset($_GET['client']) ) { $GetClient = $_GET['client']; } else { $GetClient = ""; } $NumeroClient = $_POST['NumeroClient']; $NomInterlocuteur = $_POST['NomInterlocuteur']; $PrenomInterlocuteur = $_POST['PrenomInterlocuteur']; $EmailInterlocuteur = $_POST['EmailInterlocuteur']; $TelInterlocuteur = $_POST['TelInterlocuteur']; $EmailInterlocuteurCC = $_POST['EmailInterlocuteurCC']; $sql = "INSERT INTO `hotlinecc`.`tb_interlocuteur`(`NumeroClient`,`NomInterlocuteur`,`PrenomInterlocuteur`,`EmailInterlocuteur`, `TelInterlocuteur`, `EmailInterlocuteurCC`) VALUES('$NumeroClient','$NomInterlocuteur','$PrenomInterlocuteur','$EmailInterlocuteur','$TelInterlocuteur','$EmailInterlocuteurCC')"; $res = mysql_query($sql); if ($res) { print '<script language="javascript"> alert("Votre interlocuteur à bien été pris en compte"); location.href = "Principal.php?page=7&NumeroClient=' . $GetNumeroClient . '&client=' . $GetClient .'" </script>'; } else { echo "Erreur !!"; } ?>
Il me di indefined variable dans l url concernant le $GetNumeroClient et $Getclient
-
-
Pour la redirection dans les clients :
sa ma l'air bien ce que j'ai fait dans l url il met bien page 7&numeroclient= 1
mais vu que c'est une liste déroulante ou tout debut sa doit bloquer l'acce
pourtant dans l url il me met bien numroclien=1 dans il devrai directement m'ouvrir le client 1 et ses interlocuteur!!-
ContributeurEuh ... Tu parles de quelle page ? ^^ Celle où tu choisis le client dans la liste déroulante et après ça t'affiche le tableau du client?
Si c'est ça, mets ça dans ta liste déroulante de la liste des clients (je ne sais pas si tu l'avais déjà mis ) :
<select name="client" onchange="document.getElementById('form_nomclient').submit();">
<option value="">Choisissez un client</option>
<?php
while ( $data = mysql_fetch_array($result) ) {
echo '<option value="' . $data['NumeroClient'] . '"';
if ( $data['NumeroClient'] == $_GET['client'] ) echo 'selected';
echo ' >' . $data['NomClient'] . '</option>';
}
?>
</select>
Ca te sélectionnera le client choisi dans la liste
-
-
ContributeurVoilà ma page NouvelleIntervention.php
<?
include("connexion.php");
?>
<?php
session_start(); // On relaye la session
if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:index.php?erreur=intru"); // redirection en cas d'echec
}
?>
<?php
if ( isset($_GET['NumeroTicket']) ) {
$GetNumeroTicket = $_GET['NumeroTicket'];
} else {
$GetNumeroTicket = "";
}
?>
<center>
<h2>Formulaire d'une nouvelle intervention</h2>
<form action="Principal.php?page=15&NumeroTicket=<?php echo $GetNumeroTicket;?>" method="POST">
<fieldset id="fieldset_creer_client" style="width: 700px;">
<legend><h4>Nouvelle intervention</h4></legend>
<table>
<tr>
<td align="right">Numero du ticket : </td>
<td><input type="text" id="NumeroTicket" name="NumeroTicket" value="<?php echo $_GET['NumeroTicket'];?>"readonly /></td>
</tr>
<tr>
<td align="right">Date de l'intervention : </td>
<td><input type="text" id="DateIntervention " name="DateIntervention"/></td>
</tr>
<tr>
<td align="right">Heure de l'intervention : </td>
<td><input type="text" id="HeureIntervention" name="HeureIntervention"/></td>
</tr>
<tr>
<td align="right">Observation de l'intervention: </td>
<td><textarea id="ObservationIntervention" name="ObservationIntervention" cols="30" rows="4"></textarea></td>
</tr>
<tr>
<td align="right">Mode de l'intervention: </td>
<td><input type="text" id="ModeIntervention" name="ModeIntervention"/></td>
</tr>
<tr>
<td align="right">L'operateur de l'intervention : </td>
<td><input type="text" id="TrigrammeOperateur" name="TrigrammeOperateur" value="<?php echo $_SESSION['TrigrammeOperateur']; ?>" /></td>
</tr>
<tr>
<tr>
<td align="right">Montant du materiel : </td>
<td><input type="text" id="MontantMateriel " name="MontantMateriel" /></td>
</tr>
<tr>
<td align="right">Frais de déplacement : </td>
<td><input type="text" id="FraisDeDeplacement " name="FraisDeDeplacement" /></td>
</tr>
<tr>
<tr>
<td align="right">Mode de facturation : </td>
<td><input type="text" id="ModeFacturation " name="ModeFacturation" /></td>
</tr>
<tr>
<tr>
<td align="right">Commentaire Interne: </td>
<td><textarea type="text" id="CommentaireInterne " name="CommentaireInterne" cols="30" rows="4"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Valider le nouveau la nouvelle intervention"></td>
</tr>
</table>
</fieldset>
</form>
</center>
Et dans modification.php, j'ai ça :
Pour creer une nouvelle intervention<a href="Principal.php?page=14&NumeroTicket=<?php echo $GetNumeroTicket; ?>">cliquer ici</a>
Pour le lien pour ajouter une nouvelle intervention
- 1
- 2
- 3
- 4