Créer une page Html avec PHP

Fermé
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 - 1 août 2010 à 14:32
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 - 2 août 2010 à 17:08
Bonjour,
Ma question a l'air un peu simple , ce que je voudrais en résumé , c'est de pouvoir créer une page PHP grâce a une autre page PHP...

En développé , je voudrais qu'au travers d'un formulaire , où les balise input (2 Balise) servent de:
1) a donner les informations d'en-tête , ou l'introduction.
2) le contenu de la page.

ce serait dans le but où des membres inscrit pourront éditer des article ou tutos , puis que la page soit créer au format PHP directement avec un modèle que j'aurais fourni au préalable , ( les fonction includes , les scripts PHP de la page , le header , etc ... ) et que je voudrais que la page soit visible de cette manière :
https://www.netanswer.fr/ , donc qu'en gros , elle soit placée directement dans le répertoire "article" ..

Est-ce possible , et si oui , comment ? Merci




A voir également:

15 réponses

avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
1 août 2010 à 14:39
Salut.

Oui, c'est possible ...
Mais je te déconseille de créer réellement les fichiers sur ton espace FTP.
Tu peux créer un script PHP auquel tu passeras par GET l'id de l'article. Grâce à cet ID, tu pourras récupérer le titre, l'intro et le contenu puis généré la page.
Si tu veux des URL au format "/article/titre-de-larticle.html", il faudra utiliser l'URL rewriting (et c'est le titre de l'article au format URL qu'il faudra passer par GET).
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
1 août 2010 à 14:48
Ok merci , j'y avais pensé a sa. Mais l'URL rewriting , il faudra passer par le serveur pour faire cette modification. Mais le soucis, c'est que je suis chez un hébergeur , et pas sur un serveur dédie, ou sinon , pour rendre plus esthétique l'adresse , jpense passer par GET , avec le titre de l'article, genre :

http://www.monsite.com/articles/article.php?article=titre-de-l'article

Possible sa nan? Ou je mettrais la requête Mysql comme ceci :
" SELECT patatipatata FROM Articles WHERE titre=$titre " ou jorais pris soin de declarer la variable $titre en tant que Get Article. Possible ou pas ?
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
1 août 2010 à 14:52
Si ton hébergeur autorise l'url rewriting, ça se gère dans un .htaccess.
Le but d'utiliser ce module et de faire une "redirection interne" de "/articles/blabla.html" à "/lire_article.php?titre=blabla" par exemple.
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
1 août 2010 à 14:56
Ouais. Je n'ai pas la possibilité de travailler avec un .htaccess , le serveur est sous lighttpd, alors pour proteger un repertoire , jutilise un script PHP qui requiert une session plus un mot de passe. Donc je fais sans... :P
Alors , est-ce possible ?
0

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

Posez votre question
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
1 août 2010 à 15:01
Oui.
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
1 août 2010 à 15:02
Ok merci beaucoup ;)
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
1 août 2010 à 19:10
Hé nan ... :/ j'ai un soucis , la table n'est apparament pas trouvé , j'ai fais un <?echo?> du GET , il affiche bien ce qu'il y a ecrit dans l'URL , par contre , il ne lit pas la table. Comment faire ?
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
1 août 2010 à 23:00
C'est que tu mets un mauvais nom de table dans ta requête SQL ...
Je ne peux pas deviner ce que tu as mis et le nom réel de la table.
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
2 août 2010 à 16:46
Alors le nom de la table est : "articles" , son contenu : (id , createur , titre, contenu , aime , aime_pas , genre )

Puis ma requette est la suivante :

<?
$article = $_GET['article'];
$sql = "SELECT id, createur, contenu, aime, aime_pas FROM articles WHERE titre='.$article.'";
$requete1 = mysql_query($sql)
?>


Puis le code est :
<?php

echo $article; //echo pour savoir si l'info presente dans l'URL est bien pris en compte


if ($data1 = mysql_fetch_assoc($requete1))
{

echo'
Tutoriel de '.stripslashes(htmlspecialchars($data1['createur'])).'<br>

Titre : '.stripslashes(htmlspecialchars($data1['titre'])).'<br>

'.stripslashes(htmlspecialchars($data1['contenu'])).'
<br>
<fieldset>
'.$data1['aime'].' aiment ce tutoriel<br>
'.$data1['aime_pas'].' aiment pas ce tutoriel
</fieldset><br>



';
}
//Si on ne trouve pas d'info
else
{
echo'<br><fieldset><p>Cette article ne semble pas exister !</p></fieldset>';
}


mysql_close();
?>


Alors il me met tout le temps la fonctin else ... Jcomprend plus :/
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
2 août 2010 à 16:48
$sql = "SELECT id, createur, contenu, aime, aime_pas FROM articles WHERE titre='.$article.'";
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
2 août 2010 à 16:54
Ben c'est la meme chose non ?
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
2 août 2010 à 17:01
J'ai souligné l'erreur.
Les points sont inutiles, tu utilises des guillemets doubles, donc tu ne peux pas faire la concaténation avec des guillemets simples (apostrophes).
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
2 août 2010 à 17:02
Ok merci , donc je dois metre que :
$sql = "SELECT id, createur, contenu, aime, aime_pas FROM articles WHERE titre=$article"; ?
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
2 août 2010 à 17:05
Non, il faut laisser les apostrophes.
Et n'oublie pas d'utiliser mysql_real_escape_string() pour éviter les injections SQL.

Au final, ça donne ça :
$sql = 'SELECT id, createur, contenu, aime, aime_pas FROM articles WHERE titre="'.mysql_real_escape_string($article).'"';
(je préfère utilise des guillemets simples quand il y a des variables dans les chaines)
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
2 août 2010 à 17:07
Ok merci , je vais essayer ... ;)
0
Wave Style 974 Messages postés 902 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 21 janvier 2015 76
2 août 2010 à 17:08
C'EST BON CA MARCHE ! :D .. Merci :D
0