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 :

No tuples available at this result index


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Novembre 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2008
    Messages : 130
    Points : 48
    Points
    48
    Par défaut No tuples available at this result index
    Bonjour,
    voici mon code :
    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
    <?php include('connection.inc');			
    			// sélection de l'id de la tache qu'on va créer !
    			$sql = " SELECT MAX(id_tache) as idTache FROM T_TACHE";
    			$req = odbc_exec($cnx,$sql);
    			$data = odbc_fetch_array($req);
    			$id_tache = $data['idTache'];
    			$id_tache++;
    			/* -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
    			// INSERTION DE LA TACHE !
    			$sql="	INSERT INTO T_TACHE (id_tache,libelle_tache,dossier_tache,client_tache,detail_tache,valider_tache) 
    					VALUES(".$id_tache.",'".$tache."','".$dossier."','".$client."','".$details."',".$valider.")
    				 ";
    			$req=odbc_exec($cnx,$sql) or die('erreur sql dans : '.$sql);
    			/* -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
     
     
    			$i_date=0; // compteur pour les dates remplies ou non !
    			while($i_date<=5)
    			{
    				$date='date'.$i_date;				
    				if(isset($_POST[$date]) && !empty($_POST[$date]))
    				{
    					$date_=$_POST[$date];
    					// Conversion date en US pour Access
    					$date_format_us= implode('-', array_reverse(explode('/', $date_)));		
    					$time= strtotime($date_format_us.'+ '.$i_date.' DAY');					
    					$dateUS=date("m/d/Y",$time);
    					/*-------------------------------------------------------------------------------------------------------------------------------------*/
     
    					$sql="SELECT * FROM T_EMPLOYE ORDER BY id_employe ASC";
    					$req=odbc_exec($cnx,$sql) or die('erreur sql dans : '.$sql);
    					while($data=odbc_fetch_array($req))
    					{
    						echo $data['initiale_employe'];
    						if(isset($_POST[$data['initiale_employe']])) // Si initiale employe envoyé = initiale du nIEME champs de la table employe				
    						{
    							$sql="INSERT INTO T_TACHE_EMPLOYE VALUES(".$id_tache.",".$data['id_employe'].",#".$dateUS."#)";
    							$req=odbc_exec($cnx,$sql) or die('erreur sql dans : '.$sql);
    						}
    					}
    				}						
    				$i_date++; // INCREMENTATION !
    			}					?>
    Et il m'indique qu'a cette ligne là 32 : No tuples available at this result index in ***

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Tout d'abord bonjour.

    J'ai le même type d'erreur que toi.

    Je m'explique :

    Je suis en train de développer une application Web pour mon entreprise, application qui doit se connecter sur une base MS Access présente sur un des serveurs de la société (Impossibilité de migrer vers MySql).

    En local (sur ma machine), avec un serveur Apache+MySQL, mon application web fonctionne bien (Avec ou sans DSN -> Cf détail fichier connect.php)

    Je me suis dit "ok, maintenant je vais tester sur notre serveur Intranet".
    Ce serveur à la configuration suivante :
    OS : Debian 5
    Version de Apache : 2.2.9
    Version de php : 5.2.6
    Création d'un DSN sur le serveur Intranet sous Linux
    Voici l'erreur que j'obtiens :
    Warning: odbc_fetch_object() [function.odbc-fetch-object]: No tuples available at this result index in /var/www/intranet/GDA/pages/AL.php on line 43
    Voici mon code 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
     
    //connection au serveur:
    include('fonctions/connect.php');
     
    $sql = "SELECT ... FROM ... WHERE ...";
     
    //exécution de la requête:
    $requete = odbc_do($cnx, $sql) or die (odbc_error());
     
    //affichage des données:
    while($result = odbc_fetch_object($requete))
    {
         //exemple d'une donnée affichée
         $result->num_appels;
    }
    Concernant mon fichier connect.php, voici les 2 méthodes que j'ai testé et qui fonctionnent en local (Machine Windows Vista pour info) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    //connexion 1
    $cnx = odbc_connect( "nom_de_mon_dsn", "root", "" ) or die ("Impossible de se connecter à la base de donnée") ;
    OU
    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
     
    //connexion 2
    $login='root';
    $mot_de_passe='';
    $cfg_dsn = "DRIVER=Microsoft Access Driver (*.mdb);
    DBQ=//nom_du_serveur/base/nom_de_la_base.mdb;
    UserCommitSync=Yes;
    Threads=3;
    SafeTransactions=0;
    PageTimeout=5;
    MaxScanRows=8;
    MaxBufferSize=2048;
    DriverId=281";
     
    $cnx = odbc_connect($cfg_dsn,$login,$mot_de_passe);[/quote]
    J'ai énormément cherché sur Internet et sur developpez.com, mais toutes les réponses que je trouve pour lesquelles tout fonctionne sont sur des serveurs web locales et sous Windows.

    Avez vous une idée pour faire fonctionner mon application web sur un serveur Intranet sous Linux ?

    Je reste à votre disposition pour toutes questions complémentaires.

    Cordialement,

    Dalto.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Je continue à chercher de mon coté, mais pour le moment pas d'avancement !
    Quelqu'un aurait il une idée ?

    Cordialement,

    Dalto.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Décembre 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 33
    Points : 39
    Points
    39
    Par défaut
    Bonjour,

    J'ai eu le même problème.

    J'ai recherché pendant longtemps l'erreur quand je me suis aperçu que ma requête était en fait vide (empty ; ="").

    Dans ce cas, odbc_exec ne semble pas retourner d'erreur, car en fait il n'a rien exécuté.
    Mais forcement, il n'y a pas de ligne de résultat donc après le odbc_fetch_x va planté en donnant l'erreur :No tuples available at this result index

    CQFD !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 253
    Points : 74
    Points
    74
    Par défaut
    Bonjour,

    Oui j'ai déjà eu ce probleme la,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $res = odbc_exec($connect, $sql);
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $res = mysql_query($connect, $sql);
    au moment de l'execution de la requete, $sql etait vite, j'avais mis $SQL alors que ma requete était contenue dans $sql.
    Petite erreur toute bête mais qui a son importance

Discussions similaires

  1. Socket name is not available on this system
    Par sebfury dans le forum AIX
    Réponses: 0
    Dernier message: 26/03/2011, 21h21
  2. dynamic loading not available in this perl
    Par roguen dans le forum Langage
    Réponses: 1
    Dernier message: 17/02/2009, 18h41
  3. [Axis - Hello World]No service is available at this URL
    Par Rtitoun dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 03/07/2008, 14h12
  4. [MySQL] Unable to jump to row 0 on MySQL result index 8
    Par biddal dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 13/03/2008, 18h08
  5. 0 is not a Sybase result index
    Par Sophy75 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/05/2006, 11h33

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