Php aide fonction

Résolu/Fermé
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 - 1 juin 2009 à 19:41
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 - 7 juin 2009 à 11:25
Bonjour a tous,
J ai une petite question

Je veux creer grace a une base de donnée sql creer une ligne pour chaque maison un texte et des images et apres creer c ette page

exemple je rentre dans ma base de donné la maison1 je met les 3 photos dans une autre colonne et le texte dans une 3 eme colonne

Je veux que la page .php s apelle maison1.php

puis je rajoute dans ma base dans la 2eme ligne maison2 puis les photos et le texte la page dois s'apeller
maison2.php

et ainsi de suite

est ce que cela est possible?

Merci de votre aide
A voir également:

23 réponses

wahiba.m Messages postés 43 Date d'inscription mardi 5 décembre 2006 Statut Membre Dernière intervention 22 septembre 2009
1 juin 2009 à 19:56
bonjour

tu veux creer autant de pages que d'enregistrements de ta base ????

ou est l'utilité !!!

pourquoi ne pas gerer le contenu de ta base dans la même page,

A+
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 juin 2009 à 20:02
merci de ta reponse

mais je ne peux pas gerer les contenu sur la meme page car chaque maison est differente

exmple j ai 20 maisons et il me faut 20 pages

tu comprend?
0
wahiba.m Messages postés 43 Date d'inscription mardi 5 décembre 2006 Statut Membre Dernière intervention 22 septembre 2009
1 juin 2009 à 20:09
c'est claire ,
dans une base de données tous les enregistrements sont differents les uns des autres sinon on aura un problème de redandance d'information!!

il me semble que c'est pareil pour tes maisons

désolée mais moi j'arrive pas à comprendre votre raisonnement

mais je vous souhaite bonne chance
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
1 juin 2009 à 20:28
Hmm, tu créé une page page.php

Dans cette page tu mets un bout de code pour dire de récuperer les valeurs $_GET de la page, et récupérer les entrées de la base de donnée en fonction de sa, exemple:
si tu tape:
page.php?maison=maison1
la page ira chercher dans la base de donnée l'entrée ayant pour maison "maison1"

Ensuite pour que pour chaque maison à la place de page.php?maison=maisonx on ai maisonx.php, tu fais du rewriting avec htacess.
0

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

Posez votre question
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
1 juin 2009 à 22:18
merci kelset pour ta reponse

je debut ne php j ai simplement les base

n aurais tu pas un exemple pour savoir comment faire?

merci pour ton aide
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
2 juin 2009 à 16:53
personne?
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
2 juin 2009 à 17:35
Créé un fichier page.php3. Dans ce fichier, écris ce qui suit (à adapter) :


<?php

// On récupère le contenu de $_GET dans l'adresse, soit ce qu'il y a après page.php3?maison=
$maison=$_GET['maison'];

// On demande à Mysql de nous donner toutes les informations de l'entrée ayant pour maison '$maison'
$query = mysql_query("SELECT (*) FROM ta_table WHERE maison='$maison'") or die(mysql_error());

// On met le tout dans une array
$data = mysql_fetch_array($query)

?>
<html>
  <head></head>
  <body>
    Contenu de ta page, puis pour chaque valeur : <?php echo $data['valeur']; ?> en remplacant "valeur" par la colonne désirée dans ta table.
  </body>
</html>



Ensuite pour le rewriting, créé un fichier htaccess.txt sur ton ordinateur, et insère-y le code suivant :

# Fichier HTACCESS

# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks

# Activation du module de réécriture d'URL :
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !^(css|img)
RewriteCond %{REQUEST_FILENAME} !-f 

#-Règle de réecriture
RewriteRule ^([0-9a-zA-Z-]+)\.php$ /page.php3?maison=$1 [L]


Enregistre et ferme le fichier. Envoie-le sur ton serveur puis renomme le en ".htaccess" aulieu de "htaccess.txt". Ca devrait marcher, cela dit il y a toujours des chances que ton serveur soit configuré autrement et qu'il nécessite des modifications au niveau du fichier .htaccess.
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
2 juin 2009 à 23:17
merci pour ton exemple

je vais tester demain et je tien au courant

a+
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
3 juin 2009 à 19:59
je viens de tester ca ne marche pas

voici ma page pa.php

<?php
$base = mysql_connect ('serveur', 'nonbase', 'MDP');
mysql_select_db ('nombase', $base);
// On récupère le contenu de $_GET dans l'adresse, soit ce qu'il y a après pa.php?maison=
$maison=$_GET['maison'];

// On demande à Mysql de nous donner toutes les informations de l'entrée ayant pour maison '$maison'
$query = mysql_query(" SELECT (*) FROM vision_modern WHERE maison='$maison'") or die(mysql_error());

// On met le tout dans une array
$data = mysql_fetch_array($query)

?>
<html>
<head></head>
<body>
Contenu de ta page, puis pour chaque valeur : <?php echo $data['maison']; ?> <?php echo $data['texte1']; ?> <?php echo $data['texte2']; ?><?php echo $data['dd']; ?>en remplacant "valeur" par la colonne désirée dans ta table.
</body>
</html>

j ai copier coller le fichier htaccess

et j ai ca cvomme erreur

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*) FROM vision_modern WHERE maison='arte_180'' at line 1

as tu uune idee?

Merci pour ton aide
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
3 juin 2009 à 20:16
Oui, en effet, excuse moi j'ai fait une petite bêtise en oubliant un point virgul et des parenthèses, voilà la bonne version (il me semble ne rien avoir oublié cette fois :) )

<?php
$base = mysql_connect ('serveur', 'nonbase', 'MDP');
mysql_select_db ('nombase', $base);
// On récupère le contenu de $_GET dans l'adresse, soit ce qu'il y a après pa.php?maison=
$maison=$_GET['maison'];

// On demande à Mysql de nous donner toutes les informations de l'entrée ayant pour maison '$maison'
$query = mysql_query(" SELECT * FROM vision_modern WHERE maison='$maison'") or die(mysql_error());

// On met le tout dans une array
$data = mysql_fetch_array($query);

?>
<html>
<head></head>
<body>
Contenu de ta page, puis pour chaque valeur : <?php echo $data['maison']; ?> <?php echo $data['texte1']; ?> <?php echo $data['texte2']; ?><?php echo $data['dd']; ?>en remplacant "valeur" par la colonne désirée dans ta table.
</body>
</html> 
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
3 juin 2009 à 20:28
ah oui merci je cherhcais mais je trouvais pas

et ici $query = mysql_query(" SELECT * FROM vision_modern WHERE maison='$maison'") or die(mysql_error());

faut bien enlever la parenthese a all non? (*)

merci beaucoup pour ton aide
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
3 juin 2009 à 21:01
voilà, c'est ce que j'ai fait dans la correction du code.
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
3 juin 2009 à 22:13
ok merci beaucoup c es ce que je recherhcais
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
3 juin 2009 à 22:55
encore une petite question

j aimerais aussi stocker 2 photos pour afficher cela est ce possible?

j ai essaier ce tuto mais ca ne vas pas https://openclassrooms.com/fr/courses

merci de ton aide
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
3 juin 2009 à 23:20
Désolé, je ne sais pas comment stocker des images dans MySQL... Stocker leur chemin c'est facilement possible, mais pas l'image en elle même, ca je ne saurai pas faire...

Ce que tu peux faire c'est faire un dossier "photos" puis dans ce dossier mettre toutes les photos que tu veux en commencant par maisonx_, ce qui donnerait par exemple "maison1_nom-de-la-photo.jpg" puis créer un petit script en PHP qui listerait toutes les photos du dossier "photos" commençant par "maison1_", puis les afficherait.

Sinon autre solution plus compliquée (ou pas), ce serait de mettre en place un système d'upload puis le relier à MySQL.
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
4 juin 2009 à 17:29
merci de ta reponse

mais le chemin suffit car je l es es deja dans un dossier images

j ai essaier en rentrant juste le nom du chemin mais ca ne vas pas

pourrais tu me dire comment je dois faire?

merci pour ton aide
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
4 juin 2009 à 19:07
Dans ta table contenant les maisons, rajoute une colonne "photo", puis sélectionne la dans ton codee avec $data['photo'] et inclue le résultat dans l'adresse d'une image :
<img src="<?php echo $data['photo']; ?>" />
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
4 juin 2009 à 20:05
ah mais oui je suis bête j ai juste mis la fonction et pas utiliser l image aie aie aie

Heureusement que tu es la

Merci beaucoup

C es la meilleur solution non?
les images stocker dans la base prenne trop de temps et de place non?

merci beaucoup
0
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
4 juin 2009 à 20:11
Oui, je ne pense pas que stocker des images dans une bdd soit la solution, c'est beaucoup trop lourd, donc autant juste stocker le chemin.
0
audi68 Messages postés 571 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 5 août 2015 9
4 juin 2009 à 20:13
ok merci beaucoup

encore une derniere petite question
y a t il une solution pour charger les fichiers dans le dossier images directement depuis le site sans passer par un ftp?

merci beaucoup
0