Problème de page PHP

Ce topic a été résolu
iPhDown

iPhDown Le 14 février 2017 à 19:43 (Édité le 25 janvier 2019 à 17:53)

Salut à tous !
Comment allez vous ?

Voilà je vous explique mon problème, je souhaite créer un espace membre, mais je rencontre un énorme problème, pour pouvoir accéder à n'importe quel page du site, je suis obliger de faire comme ceci :
http://www.mondomaine/index.php?id=1
Par exemple maintenant je souhaite aller sur la page que je voudrais accessible à tous les utilisateur, nous allons l’appeler "news".
http://www.mondomaine/news.php?id=1

Voilà, j'aimerais que tous le site en lui même soit sans ça "?id=1" et que seulement la page profile il y est ça.

http://www.mondomaine/profile.php?id=1
http://www.mondomaine/profile.php?id=2
http://www.mondomaine/profile.php?id=3
........ Ou même par le nom du profile.

Je ne sais pas si je me suis bien expliquer...
Je ne comprends vraiment pas, j'ai tout essayer de mon côté.
Merci beaucoup au personnes qui prendront le temps de me repondre.
Zbuu

Zbuu Le 14 février 2017 à 22:03

Salut 

Tu devrais nous mettre ton code de ton index.php et news.php ce sera plus facile pour nous de voir ce qui cloche. Mais comme ça je dirais que tu as sans doute mis une condition qui demande a ce que $_GET['id'] soit renseigné
iPhDown

iPhDown Le 15 février 2017 à 08:42 (Édité le 15 février 2017 à 08:46)

Salut @Zbuu !
Je te remercie de ta réponse rapide, alors voilà mon code de "index" qui je pense suffira pour comprendre auprès de vous connaisseur en PHP.
<?php
session_start();
$bdd = new PDO('mysql:host=;dbname=', '', '');
if(isset($_GET['id']) AND $_GET['id'] > 0) {
   $getid = intval($_GET['id']);
   $requser = $bdd->prepare('SELECT * FROM membres WHERE id = ?');
   $requser->execute(array($getid));
   $userinfo = $requser->fetch();
?>
<!DOCTYPE html>
<html lang="fr">
<!-- DEBUT HEAD -->
<?php include('UNI/UNCODE/head.php'); ?>
<!-- FIN HEAD -->
<body>
<!-- DEBUT HEADER -->
<?php include('UNI/UNCODE/header.php'); ?>
<!-- FIN HEADER -->
    
<!-- DEBUT PAGE -->
<?php include('UNI/UNCODE/page01.php'); ?>
<!-- FIN PAGE -->
      
<!-- DEBUT FOOTER -->
<?php include('UNI/UNCODE/footer.php'); ?>
<!-- FIN FOOTER -->
</body>
</html>
<?php 
} 
?>
Dans les includes qu'on peux retrouver dans le code html, sa me serre à mieux me repérer quand j'ai besoin d'aller dans un document.
Je sais pas si tu as besoin de plus d'informations ?
Merci beaucoup de prendre le temps de répondre à mon problème, c'est très gentil.
iPhDown

iPhDown Le 15 février 2017 à 08:43

Je vais tout de même essayer d'enlever 
   $getid = intval($_GET['id']);
Pour voir ce que cela donne sans.
Je débute le PHP et me réfère au codage de PrimFX au niveau de l'espace membre.
iPhDown

iPhDown Le 15 février 2017 à 08:49

Je viens de tester, non je dois toujours le rendre sur http//www.mondomaine/index.php?id=1
Zbuu

Zbuu Le 15 février 2017 à 10:32

C'est comme je le disais c'est bien ta condition qui pose problème 
if(isset($_GET['id']) AND $_GET['id'] > 0) {
Ici avec ta conditions tu demandes à ce que $_GET['id'] existe et que $_GET['id'] soit supérieur à zéro pour affiché ta page, donc c'est normal que ta page ne s'affiche pas 😀
iPhDown

iPhDown Le 15 février 2017 à 10:50

Comment doit-faire ?
Je suis perdu là mdr :(

<?php
Là on est d'accord, je rentre dans ma base de donnée, mais la page ne s'affiche pas non plus....
Zbuu

Zbuu Le 15 février 2017 à 10:58

Si tu n'a pas besoin de ta condition alors tu as juste à la supprimé 😀
iPhDown

iPhDown Le 15 février 2017 à 10:59

Et après cela fonctionnera ?
Avec seulement une entrée dans la base de donnée ?
Zbuu

Zbuu Le 15 février 2017 à 11:09

Et après cela fonctionnera ? 
Tu dis plus haut que tu souhaites accéder aux pages index.php et news.php sans avoir à mettre ?id=1 alors que dans ton code ta condition demande un id. Alors oui si tu supprimes la condition alors normalement ton problème sera résolu.

Avec seulement une entrée dans la base de donnée ?
J'ai pas très bien compris ce que tu veux dire ?? 
iPhDown

iPhDown Le 15 février 2017 à 11:39

<?phpsession_start();
$bdd = new PDO('mysql:host=;dbname=', '', '');
?>
Je dois seulement mettre ceci si j'ai bien compris ?
Je suis vraiment désolé, c'est du chinois pour moi, je découvre...
Zbuu

Zbuu Le 15 février 2017 à 11:47

Tout dépend de ce que tu as besoin sur ta page 😀 

Si tu n'a pas besoin de récupéré les sessions alors tu n'a pas besoin du session_start(); 
Et si tu n'a pas besoin d'accéder à la base de donnée alors inutile de l'instancier 😀 
iPhDown

iPhDown Le 15 février 2017 à 13:05

D'accord, super,
Je pense avoir compris.
<?php
session_start();
?>
Si j'ai besoin d’accéder à une session
<?php
session_start();

$bdd = new PDO('mysql:host=;dbname=', '', '');
?>
Si j'ai besoin de récupérer des données pour les afficher sur la page
avec bien sur des conditions par exemple :
if(isset($_GET['news']) AND $_GET['news'] > 1) {   
$getid = intval($_GET['id']);    
$userinfo = $requser->fetch();
Zbuu

Zbuu Le 15 février 2017 à 13:36

oui c'est ça 😀
iPhDown

iPhDown Le 15 février 2017 à 13:49

Merci beaucoup pour ta gentiellesse
Zbuu

Zbuu Le 15 février 2017 à 14:38

Content d'avoir te venir en aide 😉 penses a mettre le sujet en résolu si c'est le cas 😀 
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte