Problème de page PHP
- Accueil
- Forum
- Programmation
- PHP
- Problème de page PHP
iPhDown Le 14 février 2017 à 19:43 (Édité le 25 janvier 2019 à 17:53)
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 Le 14 février 2017 à 22:03 (Édité le 1 janvier 1970 à 01:00)
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 Le 15 février 2017 à 08:42 (Édité le 15 février 2017 à 08:46)
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 Le 15 février 2017 à 08:43 (Édité le 1 janvier 1970 à 01:00)
$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 Le 15 février 2017 à 08:49 (Édité le 1 janvier 1970 à 01:00)
Zbuu Le 15 février 2017 à 10:32 (Édité le 1 janvier 1970 à 01:00)
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 Le 15 février 2017 à 10:50 (Édité le 1 janvier 1970 à 01:00)
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 Le 15 février 2017 à 10:58 (Édité le 1 janvier 1970 à 01:00)
iPhDown Le 15 février 2017 à 10:59 (Édité le 1 janvier 1970 à 01:00)
Avec seulement une entrée dans la base de donnée ?
Zbuu Le 15 février 2017 à 11:09 (Édité le 1 janvier 1970 à 01:00)
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 Le 15 février 2017 à 11:39 (Édité le 1 janvier 1970 à 01:00)
<?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 Le 15 février 2017 à 11:47 (Édité le 1 janvier 1970 à 01:00)
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 Le 15 février 2017 à 13:05 (Édité le 1 janvier 1970 à 01:00)
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();
iPhDown Le 15 février 2017 à 13:49 (Édité le 1 janvier 1970 à 01:00)
Zbuu Le 15 février 2017 à 14:38 (Édité le 1 janvier 1970 à 01:00)