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

SQL Procédural MySQL Discussion :

Pb de fonction avec mysql


Sujet :

SQL Procédural MySQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut Pb de fonction avec mysql
    Bonjour à tous,

    J'ai une première page index.php au j'établi ma connection avec mysql.
    Une deuxième page fonction.php où j'ai mes paramètre de connection et plusieurs fonctions.

    Ces fonctions ont besoin d'une connexion a mysql (c'est la meme que dans ma page index).

    Le problème est qu'il ne trouve pas la ressource de connexion a mon avis

    L'erreur est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\transfert\fonction.php on line 50
    Voici une parti de mon code se situant dans ma page index :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $connect=mysql_connect($host,$user,$pass) or erreur("Erreur de connexion au serveur de base de données : ".$host."<br>");
     
    donne_lieu($nom,$connect,$base_glpi) //appell fonction qui se trouve dans fonction.php
    Merci

  2. #2
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 27
    Points : 30
    Points
    30
    Par défaut
    Tu ne dois pas remplacer le mot 'erreur' par die ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $connect=mysql_connect($host,$user,$pass) or die("Erreur de connexion au serveur de base de données : ".$host."<br>"); 
     
    donne_lieu($nom,$connect,$base_glpi) //appell fonction qui se trouve dans fonction.php

  3. #3
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Je dirais plutot que c'est ta requête qui foire.

    Au lieu de 'or erreur' essaye ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    or die('erreur dans la requete '.mysql_error())

  4. #4
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Le mot 'erreur' correspond a une fonction du meme nom.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $connect=mysql_connect($host,$user,$pass) or erreur("Erreur de connexion au serveur de base de données : ".$host."<br>");
    Je suis sur que ma conexion marche dans ma page index car mabase dde donnée est modifié par la suite.

  5. #5
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Je dirais aussi que ta connection fonctionne.
    Le message d'erreur semble dire que le résultat de la requête ne contient rien d'exploitable.
    Or tu récupère les erreurs de connection. Si il n'en affiche pas c'est que la connection fonctionne et que l'erreur vient bien de la requête

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Je voudrait savoir quel paramètre donner a ma fonction ou quoi faire paour que cela marche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    donne_lieu($nom,$connect,$base_glpi)
    $nom : variable pour un traitement
    $connect: variable de connexion
    $base_glpi : variable contenant le nom de ma base de donnée

  7. #7
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Donne-nous un peu de code qu'on puisse t'aider.

  8. #8
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Tu veut le code de ma fonction donne_lieu ou de mon code au moment de l'appel de ma fonction.

  9. #9
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Un peu de tout, mais ce qui est nécessaire, inutile de surcharger avec du html

  10. #10
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    page : index.php
    mes variables de connexion a la base sont bonne et sont défini dan page fonction.php
    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
     
    include ("fonction.php");
     
    $connect=mysql_connect($host,$user,$pass) or die("Erreur de connexion au serveur de base de données : ".$host."<br>");
     
    if($connect)
    {
    $req=mysql_query('SELECT * FROM '.$base_ocs.'.hardware');
    $nbligne=mysql_num_rows($req);
     
    for($i=1;$i<=$nbligne;$i++)
    {
    	$curseur=mysql_fetch_array($req);
    	if ($curseur['WORKGROUP']!="")
    	{
    		$os_du_pc=donne_os($curseur['OSNAME'],$connect,$base_glpi);
    }
    }
    page fonction.php
    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
     
    function donne_os($nom_os,$connect,$base_glpi)
    {
    if($nom_os !="")
    {
    	$req_sql_search_os=mysql_query('select* from '.$base_glpi.'.glpi_dropdown_os where name="'.$nom_os.'"');
    	$buf_sql_search_os=mysql_fetch_array($req_sql_search_os);
    	if (($buf_sql_search_os['ID'])!="")
    	{
    		$os=$buf_sql_search_os['ID'];
    	}
    	else
    	{
    		$os=0;
    	}
    }
    else
    {
    	$os=0;
    }
    return $os;
    }
    J'espère que j'en ai mis assez et que j'ai pas surcharger

  11. #11
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Faut-il refaire une connexion dans la fonction vu quel n'est pas dans la meme page?

  12. #12
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Remarque 1
    Dans ta fonction tu n'utilises pas '$connect' ca qui en soi ne pose pas de problème puisque la connection étant réalisée, elle sera utilisée par défaut.

    Remarque 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req_sql_search_os=mysql_query('select* from '.$base_glpi.'.glpi_dropdown_os where name="'.$nom_os.'"');
    On dirait qu'il n'y a pas d'espace entre select et *
    D'ou l'intérêt du
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    or die ('blabla'.mysql_error())

  13. #13
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Merci ssa vené de l'espace qu'il manquait entre le select et *
    Trop bon yeux

    Merci

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 02h08
  2. Création des fonctions personnalisées avec mysql
    Par mutkas10 dans le forum Débuter
    Réponses: 3
    Dernier message: 24/06/2009, 18h41
  3. [MySQL] fonction update en php avec mysql
    Par khamett dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 19/04/2008, 14h33
  4. fonction date avec mysql
    Par yopman dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 18/09/2006, 00h15
  5. équivalence fonction ROWNUM (oracle) avec MySQL
    Par pblb62 dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 23/01/2006, 14h50

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