Page 1 sur 1

fonction include

Posté : 08 févr. 2013, 11:24
par Mohi
Bonjour,

j'ai un site sur un serveur qui fonctionne très bien.

J'ai voulu l'installer en local et je ne comprends pas pourquoi les include ne fonctionnent pas.
Par exemple :
include ("connexion.php");
[...]
$req_mot=" SELECT * FROM article  where  article.date_parution<='$dateauj' AND  banner=1 ORDER BY date_parution DESC";
$result = requete($req_mot);
me donne :
Fatal error: Call to undefined function requete() in C:\Program Files\EasyPHP-12.1\www\index.php on line 35

la fonction requete est bien déclarée dans connexion.php.

Merci d'avance.

Re: fonction include

Posté : 08 févr. 2013, 12:33
par xTG
Tu dois avoir un autre message d'erreur en rapport avec l'include.
Si tu n'arrives pas à le trouver tu peux faire ainsi pour le débusquer :
require("connexion.php");
A la différence d'include cette fonction génère une erreur fatale et ne charge pas le reste du script en cas d'erreur.

Re: fonction include

Posté : 08 févr. 2013, 12:37
par Mohi
Ca me donne exactement la même chose. Je n'ai pas d'erreur sur le require donc ca vient peut être d'autre chose.

C'est bizarre qu'il ne connaisse pas la fonction requete() qui est déclarée dans connexion.php alors que le require ne génère pas d'erreur.

VOici la fonction en question :
function requete( $requete )
{
  $requete=str_replace(' union ',' ',$requete);

  if($resultat = mysql_query( $requete )) return $resultat ;
// erreur( "Erreur dans la requête : $requete<br>" . mysql_error() ) ;
}

Re: fonction include

Posté : 08 févr. 2013, 12:44
par Mohi
Et si je met un echo tout en haut du fichier connexion.php ou dans la fonction requete() il n'apparait pas.

Re: fonction include

Posté : 08 févr. 2013, 14:01
par xTG
Et si tu mets un echo avant ton require et après ?

Re: fonction include

Posté : 08 févr. 2013, 14:04
par Mohi
Ils n'apparaissent pas. Voici le code complet :
<?
echo "aaaaa" ;
	require "connexion.php";
	require "f_date.php";
	require "f_fonction.php";
echo "bbbbb" ;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<? include "referencement.php";?>


<link href="ecandidat.css" rel="stylesheet" type="text/css" media="screen" />
<script src="ecandidat.js" type="text/javascript" ></script>
<link rel="stylesheet" href="themes/default/default.css" type="text/css" media="screen" />
<link rel="stylesheet" href="css/nivo-slider.css" type="text/css" media="screen" />
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" />
</head>

<body>  
         <div id="wrapper">
            <div class="slider-wrapper theme-default">
               <div class="ribbon"></div>
               <div id="slider" class="nivoSlider">
<?php
	 $dateauj=date("Y-m-d",time());
	 $req_mot=" SELECT * FROM article  where  article.date_parution<='$dateauj' AND  banner=1 ORDER BY date_parution DESC";
	 $result = requete($req_mot);
[...]

Re: fonction include

Posté : 08 févr. 2013, 18:04
par xTG
S'ils n'apparaissent pas c'est que tu n'exécutes pas ce fichier. :lol:

A noter qu'il est préférable d'utiliser <?php au lieu de <? car le second pourrait ne pas être interprété suivant la configuration du serveur (short_tags).

Re: fonction include

Posté : 08 févr. 2013, 18:33
par Mohi
Et bien tu as vu juste car ça venait de short_open_tag qui était à off au lieu de on dans php.ini

Merci en tout cas.