IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Automatisation Php


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut Automatisation Php
    Bonjour,
    J'aurai besoin d'une aide car je ne trouve pas la solution :/
    Ce que je recherche est de pouvoir automatiser sans passer par Ajax car je ne connais pas mais donc par php.
    Je voudrais qu'en cliquant sur une valeur dans une combobox , que cela m'affiche en dessous le résultat d'une requête sql.
    Par exemple en cliquant sur "Facture 001" cela m'affiche "Date Facture", "Montant HT" , "Montant TTC"..etc


    Voici mon code qui pour le moment n'est pas fonctionnel et qui n'automatiserai que pour un résultat alors que je souhaiterai que plusieurs s'affichent.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    <?php
    	require('../Connex.php');
    	require('../index.html');
    	//require('DeclareReq.php');
    ?>
    <?php
     
    $reqtest = "SELECT Libelle FROM Type_Facture";
    $TypeFact = mysql_query($reqtest);
     
    $reqtestNumFact ="SELECT NumFacture FROM Facture "; 
    $NumFacture = mysql_query($reqtestNumFact);
     
    ?> 
    <?php 
    	if(isset($_POST['NumBox'])){ 
     
    		$Numbox=$_POST['NumBox']; 
    	}else{ 
    		$Numbox=-1; 
    	} 
    ?> 
    <html>
    	<head>
    		<LINK href="../css/style.css" rel="stylesheet">
    		<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
    	</head>
    	<form name="ChoixFact" action="" method="POST">
    		<center><table style= border:solid>
    			<caption> Déclaration </caption>
    			<tr>
    				<th> Select facture </th>
    				<td><select name ="NumBox" onchange="ChoixFact.submit();">
    					<option value=-1>-- Choisissez -- </option>
    						<?php
     
    							$requete = "SELECT NumFacture FROM Facture";
    							$execution_requete = mysql_query($requete);
    								while($total = mysql_fetch_array($execution_requete)){
    									echo "<option value=\"".$total["NumFacture"]."\"";
    										if($NomBox==$total['NumFacture']) { 
    											echo "selected"; 
    										}
    											echo ">".$total['NumFacture']."</option>\n";
    								}
    						?>
    					</select> 
    				</td>
    			</tr>
    		</table></center>
    	</form>
    </html>
     
    	<?php 
    		if($NumBox != -1){  
     
    			$requete = "SELECT DateFact, Montant_HT, Montant_TTC, NumFacture FROM Facture WHERE NumFacture ='".$NumBox."'"; 
    			$execution_requete = mysql_query($requete); 
     
     
    			$total = mysql_fetch_array($execution_requete); 
    				echo "Date facture : ".$total['DateFact']."<br />Montant HT : ".$total['Montant_HT']."<br />Montant TTC :".$total['Montant_TTC']; 
    		} 
    	?> 
     
    		<script>
    			function colourize(){
    				var dnl = document.getElementsByTagName("tr");
    				for(i = 0; i < dnl.length; i++){
    					if((Math.round(i / 2) * 2) == ((i / 2) * 2) )
    						dnl.item(i).style.background="#E8E8FF";
    					}
    				}
    				window.onload = colourize;
    			}
    		</script>
     
    <html>
    	<form method="post" action="">
    		<center><table border="0">
    			<caption> Liste des factures </caption>
    				<tr>
    					<th>Date facture : </th>
    						<td><input type="text" name="Date" value="<?php echo $total['DateFact'] ?>" size="20" readonly></td>
    					<th>Montant HT :</th>
    						<td><input type="text" name="Mht" value="<?php echo $total['Montant_HT'] ?>" size="20" readonly></td>
    				<tr></tr>
    					<th>Montant TTC :</th>
    						<td><input type="text" name="Mttc" value="<?php echo $total['Montant_TTC'] ?>" size="20" readonly></td>
    				</tr>
    		</table></center>
    			<center><input type="submit" name="supprimer" value="Supprimer" id="SaveAn"></center>
    	</form> 
    </html>
    Voici le rendu web (Qui n'est pas totalement ce que je voudrais mais ce serai gentil de me débloquer cette partie :$)
    Nom : capture d'écran2.png
Affichages : 180
Taille : 19,3 Ko

    Et voici mes valeurs de test si cela peut aider.
    Nom : capture d'écran3.png
Affichages : 211
Taille : 20,6 Ko

    Merci de votre attention.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    C'est un problème de logique ça.
    Tu as des données dans une table de la base de données de ton serveur.
    Tu as une page HTML affichée dans le navigateur.
    Si tu veux que de nouvelles données issues du serveur apparaissent sur ta page, il faut nécessairement qu'à un moment ou un autre, il y ai un échange entre le navigateur et le serveur. Donc si tu ne veux pas utiliser AJAX qui est spécialement conçu pour ça, ça ne laisse pas beaucoup de choix : tu va devoir recharger ta page à chaque changement de valeur de ton select...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 660
    Par défaut
    Citation Envoyé par Termizi Voir le message
    je souhaiterai que plusieurs s'affichent.
    d'après ce que je vois, ton formulaire permet de choisir l'affichage d'une facture dans la liste donc c'est normal qu'un seul résultat apparaisse.
    quels sont les autres résultats que tu souhaites afficher ?

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    Comment procéder pour le select ?
    Il est vrai que ce serait plus utile avec l'Ajax mais je n'en ai jamais fais (Je suis actuellement en seconde année de BTS SIO).

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    La c'est un test sur ma table Facture, pour mieux m'exprimer, je voudrai automatiser les factures de chaque numéro de télèphone.
    C'est pour cela que j'ai fait un test pour automatiser un groupe d'informations avant de réussir a automatiser plusieurs groupes d'informations..Le soucis c'est que je n'ai pas réussi avec mon test :/

  6. #6
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 660
    Par défaut
    en fait je n'ai pas compris suivant quel critère tu souhaiterai sélectionner les données pour les afficher. Et ensuite qu'est ce que tu souhaites comme résultat final pour l'affichage

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    En fet,
    Ce que je fais en ce moment ne sont que des pages de tests car je n'y arrive pas.
    Mais au final je souhaiterai pouvoir choisir dans ma combobox le numéro d'une facture et qu'en cliquant dessus j'ai par exemple le détails qui s'afficherait juste en dessous et non sur une autre page..
    Quand je saurai faire ça, je pense que je saurai faire la suite, mais déja je suis bloqué a ce niveau

  8. #8
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 660
    Par défaut
    une fois que tu auras réussi d'afficher les résultats sur une autre page, il suffira de déplacer le code sur n'importe quelle page

    en ce qui concerne les données de la facture, elles se trouvent dans quelle table ? dans la table "libelle" que tu utilisais dans le code d'exemple de ton 1er message ?

  9. #9
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    Oui on fera avec cette table de test qui s'appelle "Facture" , comme tu dis, une fois réussi il me suffira de le mettre dans d'autre pages.

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
    Apparemment, ta page comporte déjà l'appel à la librairie jQuery.

    Donc : AJAX via jQuery.


    Ne pas savoir, ce n'est pas grave.
    Ne pas vouloir apprendre...

  11. #11
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    Désolé de la réponse tardive , j'ai résolu mon problème mais j'en ai un autre.

    Est ce que j'ai un problème de quotes dans ma requête ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reqtest = "SELECT User.id AS idUS, Service.id AS idSE , User.Nom AS Name, User.Prenom, Service.Nom AS Serv, User.Actif FROM User,Service WHERE User.idServ=Service.id AND idUS = ".$id." AND idSE = ".$idS;
    Merci de votre aide

  12. #12
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Billets dans le blog
    1
    Par défaut
    Si tu as un doute sur ta requête tu l'affiche avec un echo et tu la test dans ton SGBD pour voir si elle fonctionne ou non
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  13. #13
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    C'est ce que j'ai fait mais elle n'affiche rien , donc j'ai fais un var_dump qui lui me répond bool(false) donc j'en ai conclu que l'erreur viens de la requête mais ou.. :/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $id  = $_GET['idUser'] ;
    	$idS  = $_GET['idService'];
    	$reqtest = "SELECT User.id AS idUS, Service.id AS idSE , User.Nom AS Name, User.Prenom, Service.Nom AS Serv, User.Actif FROM User,Service WHERE User.idServ=Service.id AND idUS = ".$id." AND idSE = ".$idS;
    	$User = mysql_query($reqtest); 
    	$Result = mysql_fetch_array($User);
    J'ai également fais un var_dump de mes GET et j'ai bien récupéré mes id , de plus ma requête fonctionne sur phpmyadmin jusqu'aux AND..Effectivement aprés le AND ce sont des variables.

    Mais j'ai cette erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/terence/www-dev/Facturetel/User/Avant_ModifUser.php on line 12
    Ma ligne 12 qui est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Result = mysql_fetch_array($User);
    C'est donc bien ma requête qui coince et je soupçonne les quotes.

  14. #14
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Billets dans le blog
    1
    Par défaut
    Et tu vérifie ce que tu met dans $id et $idS ?
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  15. #15
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    Citation Envoyé par Kreepz Voir le message
    Et tu vérifie ce que tu met dans $id et $idS ?
    Oui ça provient d'une autre page, si tu la souhaites :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
    					$reqview ="SELECT User.id AS idUS, Service.id AS idSE , User.Nom AS Name, Prenom, Service.Nom AS Serv FROM User,Service WHERE User.idServ=Service.id AND User.Actif = 1;";
    					$View = mysql_query($reqview); 
    					While ( $User = mysql_fetch_array($View)){
    						echo '
    							<form id="forModif" method="post" action=Avant_ModifUser.php?idUser='.$User['idUS'].'&idService='.$User['idSE'].'>
    								<li>
    									<b>' .htmlspecialchars($User['Name']). '</b> 
    									' .htmlspecialchars($User['Prenom']). '
    									' .htmlspecialchars($User['Serv']).
    									' <input type="hidden" name="idU" value="'.$User['idUS'].'"> 
    									 <input type="hidden" name="idS" value="'.$User['idSE'].'">
    									<input type=submit value="Modifier" name="BT2"> 
    									<input type=submit value="Supprimer" name="BT3">
    								</li>
    							</form>';
    					}
    				?>
    Mais $id et $idS récupère bien mes id car dans l'URL j'ai bien, par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Avant_ModifUser.php?idUser=55&idService=5

  16. #16
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Billets dans le blog
    1
    Par défaut
    Peux tu rajouter ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $User = mysql_query($reqtest) or die('Erreur SQL !'.$reqtest.'<br>'.mysql_error());
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  17. #17
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    Fait j'ai cette réponse
    Erreur SQL !SELECT User.id AS idUS, Service.id AS idSE , User.Nom AS Name, User.Prenom, Service.Nom AS Serv, User.Actif FROM User,Service WHERE User.idServ=Service.id AND idUS = 56 AND idSE = 5
    Unknown column 'idUS' in 'where clause'
    Apparrement il ne connait pas le idUS si je comprends bien :/

  18. #18
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Billets dans le blog
    1
    Par défaut
    Ah bah oui !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	$reqtest = "SELECT User.id AS idUS, Service.id AS idSE , User.Nom AS Name, User.Prenom, Service.Nom AS Serv, User.Actif FROM User,Service WHERE User.idServ=Service.id AND User.id = ".$id." AND Service.id = ".$idS;
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  19. #19
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 14
    Par défaut
    Ah quelle érreur :/ !

    Mercii beaucoup de votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Automatiser l'éxecution d'un script PHP avec Crontab
    Par Siguillaume dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 08/07/2008, 09h54
  2. Automatiser l'appel d'une page PHP
    Par johnson95 dans le forum Langage
    Réponses: 4
    Dernier message: 07/05/2008, 10h51
  3. Automatisation d'un module php
    Par MegaBigBoss dans le forum Langage
    Réponses: 1
    Dernier message: 21/02/2008, 14h20
  4. [PHP-JS] Automatiser le remplissage d'une zone texte
    Par khamett dans le forum Langage
    Réponses: 4
    Dernier message: 10/10/2007, 08h40
  5. outils d'automatisation de test avec PHP
    Par ss dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 22/12/2005, 14h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo