Je souhaiterais savoir s'il était simple de faire passer des données dans une Url et les récupérer sans $_GET. Par exemple, une url Twitch marche comme ceci : twitch.tv/aristideexe. Ici je veux accéder à la page de AristideExe et l'url ne contient pas une formule nom=valeur. Sauriez comment reproduire ceci ?
Ce n'est pas un sous-domaine ça. Pour un sous-domaine, l'adresse serait en http://aristideexe.twitch.tv mais c'est possible aussi de le faire avec un sous-domaine (il faut un wildcard DNS si vraiment ce n'est pas limité à quelques noms, un VirtualHost qui les gère tous et parser $_SERVER['HTTP_HOST']).
> pour créer une url comme cela automatiquement
La générer ? Le lien (a href) ? Tu mets ce que tu veux dans ton adresse, il suffit d'echo ta chaîne //twitch.tv/<?= $row['name'] ?> quand tu génères dynamiquement le lien.
La page ? Mais justement tu n'as pas un fichier par personne (ou peu importe la ressource), ça tombe sur un script qui la gère dynamiquement en fonction de la ressource (une requête SELECT pour remonter les infos correspondantes). Tu n'as peut être plus de variable $_GET, du moins au départ, mais ça se traite exactement de la même façon.
Je reviens vers vous longtemps après avoir posé ma question car j'ai enfin essayé de faire de la manière que vous m'aviez conseillé.
Or lorsque je redirige avec un <a> vers une url telle que : "site_test.fr/aristide", cela ne fonctionne pas car il ne trouve pas le dossier sur le serveur, évidemment ... Je ne sais donc pas comment faire ce que vous m'aviez dit, pour l'instant j'ai essayé de modifier mon index.php (sans résultat), et j'aurais souhaité que vous m'éclairssiciez sur ce qui a été dit.
Par exemple, où est-ce que j'utilise la variable super globale $_REQUEST, ou encore, comment faire en sorte que le serveur ne me dise pas que l'url n'existe pas ?
Merci pour votre temps
Cordialement
Aristide
- Edité par AristideProriol 4 octobre 2020 à 22:22:20
Il te faut une réécriture d'URL ou un FallbackResource (Apache sinon try_files pour nginx, etc).
On ne peut pas non plus te donner une solution clé en main, ça dépend du serveur http (en dév comme prod), ce que tu veux précisément (ou non !) faire, etc.
Essayons, pour point de départ :
créer un fichier .htaccess qui contient FallbackResource /index.php
dans ce fichier index.php (à la racine), afficher (echo/var_dump) $_SERVER['REQUEST_URI'] sachant qu'ensuite en fonction de sa valeur (= tu peux faire des if/else if/else, switch/case, utiliser un tableau ou encore faire une requête SQL avec la clause WHERE qui va bien) pour générer une page différente suivant l'URL
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli
julp.fr ~ PHP < 8.0.0 : activer les erreurs PDO/SQL ~ PHP < 8.1.0 : activer les erreurs mysqli