Probleme lien entre des pages php dans differents dossiers

msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013 - 8 janv. 2013 à 19:31
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013 - 6 févr. 2013 à 18:30
bonjour à tous et à toute.
j'ai des difficulté pour interagir mes pages php.

lorsque les pages sont dans le même dossier pages pas de problème j'obtiens les résultats attendus.

mais lorsque je les met dans des dossiers différents ça marche pas .

donc dans un premier temps quand je les met dans le dossier principal contenant index.php . tout va bien

mais quand nowTchat.php et post.php se trouvent dans un dossier pages qui est lui contenu dans le dossier principal .ca marche pas
index.php est dans le dossier principal et non dans le dossier pages.




les pages sont :
newTchat.php
<!DOCTYPE html>
<html>
<head>
<style>
#feedback {
display:none;
}
#loader {
display:none;
}
</style>
</head>
<script type= "text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script  type="text/javascript">
$(function(){
  $("#formcom").submit(function(){
  $("#loader").show();
   /* pseudo = $(this).find("input[name=pseudo]").val(); */ /* this ==> ce formulaire*/ /*find()  ==>  trouver  un element du formulaire  Exp : le champ input*/
/*id,NumEnreg,dateArrCourrier,expediteur,destinataire,monemail,DateImput,delaisImput,instructions,autreInstruction,contact,NoteDirCab,NoteMinitr*/

sujet = $(this).find("input[name=sujet]").val(); 
username = $(this).find("input[name=username]").val(); 
message = $(this).find("input[name=message]").val(); 
monmail = $(this).find("input[name=monmail]").val(); 
 
/*var instructions= $("#instructions option:selected").val();*/
/*Ici commence la partie Ajax*/
$.post("index.php?page=post",{sujet:sujet,username:username,message:message,monmail:monmail,ladate:NOW()},function(data){
 $("#loader").hide();
if(data!="Ok"){
  $(".error").empty().append(data);
}
 else{
  $("#resultatAjax").hide().append(username+"? ?crit :
"+message+"
").slideDown();
  /*$("#formcom").fadeOut();*/ /*Va fermer le formulaire*/
}
});
return false;
   });
});
</script>



<?php

$q = mysql_query("SELECT * FROM debat ORDER BY id DESC") OR die('error');
while($rows = mysql_fetch_assoc($q)){
echo "<hr>Poster par :".$rows['username']."".$rows['message']."";
}

?>
<form method="post" action="index.php?page=newTchat">
 Sujet  :



Pseudo :



E-mail :



Message


<textarea id ="message" rows="6" cols="35"></textarea>

</form>



<script src="jquery.js" ></script>
<script src="css/jquery.js" ></script>
<script src="../jquery.js" ></script>


</html>


post.php
<?php
extract($_POST);
//connection a la base de donnée
if(isset($_POST['sujet']) && isset($_POST['message']) && isset($_POST['username']) && isset($_POST['monmail'])  ){
// declaration et securisation des variables
$sujet = mysql_real_escape_string($_POST['sujet']);
$username = mysql_real_escape_string($_POST['username']);
$monmail = mysql_real_escape_string($_POST['monmail']);
$message = mysql_real_escape_string($_POST['message']);
//$ladate = NOW();
$q = mysql_query("INSERT INTO debat(id,sujet,username,monmail,message,ladate) VALUES ('','$sujet','$username','$monmail','$message',NOW())")  or die("problème");
//$id_insert = mysql_insert_id();
//echo $id_insert;
echo 'Ok';
}
?>

et le page index.php

<?php
include('functions/connect.php');//Convertit tous les caractères éligibles en entités HTML
$page = htmlentities($_GET['page']);
//include('functions/'.$page.'.func.php');
$pages = scandir('pages');//Liste les fichiers et dossiers le un dossier pages


if(!empty($page) && in_array($_GET['page'].".php",$pages)){ //in_array() verifie si "page".php est contenu dans le dossier $pages
     $content = 'pages/'.$_GET['page'].".php";
}else{
header('Location :index.php?page=login');
}
 if( $page !='babi' && $page !='tchat'  && $page !='post' && $page !='post2' && $page !='lesSujetBaBi' && $page !='newTchat' && $page !='tchat2'){// La fonction isset() permet de déterminer si une variable est bien définie
header("location:index.php?page=babi");
 }
?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="../css/style.css" />

<title>Test menu déroulant</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

 



  
     <?php
   include($content);
 ?>
   

  



</html>

7 réponses

cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 4
25 janv. 2013 à 15:29
Salut, pour moi visiblement, le chemin dans l'include est correct.

Y-a-t-il une erreur affiché à l'écran ?


stéph
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
4 févr. 2013 à 09:30
salut merci de bien vouloir me repondre voici les erreurs qui s 'affichent :

( ! ) Warning: include() [function.include]: Failed opening 'functions/.func.php' for inclusion (include_path='.;C:\php\pear') in C:\wamp\www\ACADOMIA_BASE\index.php on line 4

Notice: Undefined variable: content in C:\wamp\www\ACADOMIA_BASE\index.php on line 34

( ! ) Warning: include() [function.include]: Filename cannot be empty in C:\wamp\www\ACADOMIA_BASE\index.php on line 34


( ! ) Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.;C:\php\pear') in C:\wamp\www\ACADOMIA_BASE\index.php on line 34
0
cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 4
4 févr. 2013 à 11:00
Salut, dans ta page index.php à la ligne 4, tu fais appel à la fonction include() pour le fichier ".func.php".
La nomenclature du fichier est-il correcte ? Si oui, je te propose de supprimer le point devant ".func".

Par la suite, la notification annonce qu'à la ligne 34, la variable $content n'est pas initialisée.
Il est fort possible que l'erreur précédente provoque celle-ci.


stéph
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
4 févr. 2013 à 21:22
comment pourrais je initialiser $content . je suis a bout .
0

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

Posez votre question
cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 4
5 févr. 2013 à 07:53
Salut, j'ai peut-être fait une erreur dans mon dernier poste.
Je vois qu'a la ligne 4, $page est vide car l'erreur est "Failed opening 'functions/.func.php'", es-tu sûr d'avoir une URL correct avec une valeur ?
Il est possible que tu n'as aucune erreur, c'est uniquement une faute de distraction.

<?php
$page = htmlentities($_GET['page']);
include('functions/'.$page.'.func.php');


stéph
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
6 févr. 2013 à 10:38
dans le navigateur quand je tape www.global-aeit.com ça m'affiche cette erreur :
Warning: include(functions/.func.php) [function.include]: failed to open stream: No such file or directory in /homez.666/globalae/www/index.php on line 4

Warning: include() [function.include]: Failed opening 'functions/.func.php' for inclusion (include_path='.:/usr/local/lib/php') in /homez.666/globalae/www/index.php on line 4

Warning: include() [function.include]: Filename cannot be empty in /homez.666/globalae/www/index.php on line 33

Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.:/usr/local/lib/php') in /homez.666/globalae/www/index.php on line 33

mais quand je tape :
www.global-aeit.com/index.php?page=login ça fonctionne correctement.

est-ce que je devrais initialiser $page =
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
6 févr. 2013 à 18:30
vraiment j arrive pas . personne pour m aider ?
0
Rejoignez-nous