Passarinho44 conseil

Résolu
sniper -  
s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,


Si t'est par la fait moi signe ! merci d'avance

71 réponses

Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
Bon 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 ...
0
sniper
 
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']))
{
.....
....
....
.....
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
<?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
}
?>
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
Quand 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/
0
sniper
 
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
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
Bon 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 ...
0
sniper
 
Merci c'est cool! mais sa il y a un bug lorsque tu choisi un client les interlocuteur se mette bien en dessou en liste deroulante.
Mais le nom client se reste pas !!!

regarde dans le tien test tu verra! donc sa m'envoi "choisis un client"
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132 > sniper
 
Ah 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 ^^
0
sniper > Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention  
 
j'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 )
0
sniper > sniper
 
je 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!!

;-)))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
Euh ... 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
0
sniper
 
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.....
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
Voilà 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>
0
sniper
 
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
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
Ah 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 ...
0
sniper
 
Ahh mercii c'est parfait!!!

Je te remercie beaucoup !!! ;-)
0
s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention  
 
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 ?
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
"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
0
s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention  
 
oui c'etait mon probleme

merci, j'ai telecharger eclipse for php mais sur ce pc il refuse l'acces enfin sa ne marche !!! :s

mais bon....
promis je ferais mes prochaine appli avec sa !! lol
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
lol 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 :)
0
s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention  
 
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é !!
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132 > s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention  
 
Pour 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 :)
0
s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   > Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention  
 
loool
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 ?
0
Passarinho44 Messages postés 963 Date d'inscription   Statut Contributeur Dernière intervention   132
 
J'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 ! :)
0
s_sniper Messages postés 210 Date d'inscription   Statut Membre Dernière intervention  
 
oui sur un seul champ aparamen sa a l'air resonable je vais y refléchir!! merci ;-)!!
0