base de donnees vers html

WRInaute discret
Bonjour,

J'ai une base de données Mysql et excel du type ville, nom, adresse, et je cherche à générer de maniere automatique des pages html à partir de cette base.

j'ai une page type déjà éxistante, et je voudrais faire une requete du style:
ville, nom, adresse, et je veux realiser

* la ville doit aller dans la title, apres le 2eme mot
le nom, l'adresse et la ville doit se positionner sous la balise h2.

*si il y a plusieurs fois la meme ville, mettre les noms, adresse, et ville
sous la balise h2 les uns a la suite des autres.

Mes connaissances en php sont quasi nulles, ça fait des semaines que je passe a trouver une solution et je n'y parviens pas, alors je crois qu'apres ce forum, j'abandonne.

Merci si vous avez quelques reponses

Patrick
 
WRInaute discret
Salut,

Merci pour cette attention :)

j'ai 2 bases, **ma premiere je l'ai eu au format csv sous forme de 95 dossiers
dénominés 01.csv 02.csv ......94.csv 95.csv un pour chaque departement, que je peux eventuellement mettre dans un meme dossier.

j'ai 10 colonnes sous forme : Nom ;Adresse; code postal; ville;telephone; fax; mail; activité; departement; numerodepartement
Je veux me servir seulement des colonnes nom, adresse, code postal, ville

**ma deuxieme, je l'ai créé car j'ai essayé de diverses manieres de faire ce dont j' ai parlé avant, mais sans jamais y parvenir :( ma base MySQL dont la table est sous la meme forme que mes fichiers excel(csv). mais regroupés sur une meme table,

voilou voilou!!

:roll:
 
WRInaute impliqué
Mouais, c'est un peu vague tout ça :

j'ai 10 colonnes sous forme : Nom ;Adresse; code postal; ville;telephone; fax; mail; activité; departement; numerodepartement
Je veux me servir seulement des colonnes nom, adresse, code postal, ville

Ce sont les noms, adresses, cp de quoi ?

Sont-ce des clients ? Juste un carnet d'adresse ?Autre chose ?

En vrac : si ce sont des clients ou un agenda, juste pour aller chercher un enregistrement complet avec toutes les colonnes, il te faut un identifiant unique (du moins dans ma conception d'une bonne table du genre) qui te permettra d'aller chercher toutes les infos que tu veux et uniquement celles-là. Au pire tu mets un index sur une autre colonne comme le nom par exemple (en misant sur le fait que chaque nom sera bien unique ... ce qui n'est vraiment pas sûr).

Bref, il te faut, d'une manière ou d'une autre, une variable qui te permettra d'afficher les données de ton enregistrement.

Pour moi un dessin vaut mieux qu'un long discours, pas possible de dessiner ici donc je vais me rabattre sur un exemple.

Imaginons que tu veuilles afficher la fiche du client DUPONT.

Tu fais une requête du genre pour aller chercher tes infos :

Code:
$sql = ("SELECT * FROM matable WHERE nom='DUPONT'");
$result = mysql_query($sql);

Le critère de sélection est casse sensitive, devrait plutôt être une variable et, mieux encore, une variable avec un identifiant unique. La valeur de cette variable devrait être fournie via un formulaire ou la query string.

Une fois ta requête effectuée, si tu n'a qu'un seul enregistrement à afficher, tu ne dois pas faire de boucle ...

Code:
$row = mysql_fetch_assoc($result);

$row étant un tableau dont la clé est le nom de la colonne de ta table.

Si tu veux afficher la ville, tu fais juste :

Code:
echo $row['ville'];

etc ...

voilà, sorry si c'est confus mais bon, je ne suis pas développeur non plus hein ...

Sinon pour apprendre tu as quelques chouettes sites :

PHP Sources
PHPDébutant
PHP Facile
Apprendre PHP

++
 
WRInaute discret
En fait, c'est pour un annuaire de fleuristes, donc j'ai la liste de fleuristes de France.
Donc par exemple, pour la ville de Cannes, j'ai 30 fleuristes, nice, 70 fleuristes...
et je voudrais faire une page pour chaque ville comprenant les fleuristes de la ville.

Le nom, c'est le nom de l'enseigne des fleuristes...

Je voudrais creer une requette disant: *** inserer d'apres ma table, dans ma page html modele, * le nom de la ville en h1
* afficher tous les fleuristes de cette meme ville, donc; nom, adresse,code postal,ville.

Mais voilà, apres avoir passé un long moment sur lesiteduzero, je ne parviens quand meme pas à m'en sortir.

Meme si je trouvais la bonne requete, ...eh bien....je ne sais pas comment je dois m'y prendre pour la faire marcher! ais je besoin d'un programme special?

En tout cas merci de ton aide :)
 
WRInaute impliqué
Hummmmm ....

Le problème c'est que :

- Tu dois avoir ces bases installées sur ton serveur
- Tu dois t'y connecter
- Faire tes requêtes
- Afficher le résultat de ces requêtes

Bref, la totale quoi !

Si tu ne sais pas comment faire du tout, on n'est pas dans la merde hein :wink:

En soi ce n'est pas difficile du tout de faire ce que tu veux, mais il faudrait savoir (à partir de) où tu coinces précisément dans ces étapes ...

Il faudrait voir aussi l'hébergement dont tu disposes afin de savoir directement si tout ça est possible ...

++
 
WRInaute occasionnel
A mes tout débuts, je n'avais pas compris qu'il fallait appeller la page en "machin.php" plutot que "machin.html" pour qu'elle soit considérer comme du php. Tu peux inclure du code html dans une page php (en fermant les balises php) mais pas le contraire. Sinon, dans le cas où tu utilises windows as-tu quelquechose comme wamp ou easyphp d'installer? Si tu es sous linux, il faut que les paquets apache, mysql et php (je crois) soient installés. Si tu pouvais nous coller un morceau de code que tu as fait pour qu'on puisse apprécier ton niveau et voir où se situe ton niveau pour cerner quels peuvent être tes problèmes.

Bon courage et n'abandonne pas, tu vas voir c'est pas si difficile...
 
WRInaute discret
En fait, chose que je n'ai pas précisé avant je veux que ces pages restent statiques (pour le referencement):(peut etre je dis là une bétise mais bon...)

** j'ai un serveur qui m'est fourni par sivit, php myadmin avec lequel je me connecte avec mon nom d'hote et mon mot de passe, jusque là, pas de soucis ;)

et j'ai un serveur que j'utilise sous wamp, en local host

**Donc, je suis en fait un bidouilleur, j'arrive a comprendre le deroulement des operations en voyant des exemples, mais pour que tout se mette en place dans ma tete, c un tit soucis.
j'ai appris avec le site du zero... et ils expliquent pas comment faire vraiment ce que je veux.
Je sais qu'il faut que je fasse des requetes du style: "en langage de nul"

select from table fleuristes villes
if plusieurs meme villes :) echo cette meme ville
et echo nom, adress, ville de tous les fleuristes de cette ville

soit: cannes; les bonnes fleurs, 3 rue des Belges, Cannes
les trefles, 4 rue des Anglais, cannes
...

apres, je ne sais meme pas ou faire cette requete, dans MySQL? pour generer mes pages automatiquement en html statiques!
et pour dire, mettre la ville ici dans la page html, mettre l'adress là, le nom là...

Bref, je suis tres nul

Je pense que meme si j'aprends le php, j'ai meme pas les bases pour savoir par quel vecteur m'en servir pour faire tout ça...

Donc, en fait, je coince a partir de : ou faire ces requetes, dans Mysql?
et quand mes resultats sont sortis, comment les integrer dans mes pages

En fait pour le code, je suis une brelle, donc oui, je suis dans la m ;)

je peux peut etre en creer un en utilisant le dictionnaire de la bidouille site du zero ou autre, mais je ne sais meme pas quelles requettes utiliser :roll:

ouai, je pense a un truc, en fait, je ne sais pas me connecter à mon serveur par l'intermediaire de code...
 
WRInaute impliqué
Je n'ai pas le temps maintenant parce que je vais bosser (un peu :lol:), mais ce soir j'essayerai de te filer un 'tit coup de pied pour arranger tout ça ...

a+
 
WRInaute impliqué
Hehe, sorry mais je viens juste de rentrer, j'ai finalement travaillé plus que prévu.

Si personne n'e t'a secouru d'ici demain 13h00, heure à laquelle je devrais être frais et dispo devant mon PC, on regardera à ça :D

Encore sorry pour ce soir 8)

++
 
WRInaute discret
Hier soir je me suis couché tot, il fallait que je me leve à 4h30 du matin, donc ça tombe bien ;)
là, je serais devant mon ordi normalement une bonne partie de l'apres midi, alors si tu as un peu de temps ...

En tout cas, merci beaucoup
 
WRInaute impliqué
Hello,

J'ai un peu de temps mais pas assez à mon avis ...

Vite fait pour te donner des pistes :

  1. 1° Il faut que tes bases soient bien installées sur le serveur. Tu peux faire cela assez facilement avec PhpMyAdmin en utilisant un fichier .sql ou .csv.

    2° Quand tes bases sont bien installées et remplies de toutes tes données, tu dois t'y connecter. Pour cela tu as besoin des identifiants et mots de passe fournis par ton hébergeur ainsi que du nom de la base de données. Généralement, je place un fichier au début de mes pages pour me connecter à la base de données et un mysql_close() dans le footer pour me déconnecter, comme ça c'est clair pour moi et ça m'évite de devoir retaper les identifiants à chaque fois.

Ainsi tu places le code suivant dans un fichier .php que tu nommes (par exemple) db_conf.inc.php :

Code:
<?php
$host="localhost"; (-> ne change normalement pas)
$login="ton login";
$pass="ton mot de passe";
$base="le nom de ta base";

$dp = mysql_connect($host,$login,$pass) or die ("Le serveur ne répond pas");
mysql_select_db($base, $dp) or die ("Connexion à la base $base impossible");
?>

Comme je te le disais, en supposant que le fichier à inclure se trouve dans le dossier /inc, tu appelles cela tout au début de ta page index.php (toujours pas exemple) comme ceci :

Code:
<?php
require_once("inc/db_conf.inc.php");
?>

Tu dois inclure ce fichier au début de chaque page qui nécessitera une interaction avec la DB.

Une fois que la connexion est établie avec le serveur, il faut faire une requête qui, dans ton cas, est tributaire d'un paramètre 'ville'.

C'est là que ça se corse un peu parce que pour t'aider plus précisément il faudrait connaître la structure exacte de ta table. Normalement, tu devrais même avoir plusieurs tables (au moins une pour les villes et une pour les fleuristes) reliées entre-elles par ce paramètre commun 'ville'.

En extrapolant un peu, imaginons que tu ais, sur ta page index, un liste des villes de France, ou un formulaire avec une liste déroulante. Dans un cas comme dans l'autre, l'idéal serait de constituer le contenu dynamiquement à partir de tes tables, ainsi tu pourras ensuite faire passer un identifiant unique qui te permettra de faire ta requête de sélection par ville (d'autre critères sont évidemment possibles :D ).

voilà, en ce qui concerne les requêtes et l'affichage, vois déjà les exemples que je t'ai donnés plus haut.

Regarde un peu à ces premières infos et dis où ça coince ... Plus tes questions seront précises et mieux on pourra t'aider ...

Au pire contacte-moi en MP dans la soirée ...

Bon courage :D

++
 
WRInaute discret
En fait, je comprend le cheminement de tout ça, mais, le point le plus important pour moi est de faire des pages statiques, qu'elles soient toujours présentes sur mon site, et non pas creer des pages dynamiques à partir de ce que demande le visiteur. Est ce que avec ce cheminement, il est possible de réaliser ça?

ma base de donnees est sous la forme:

Nom;adresse;Codepostal;Ville;Tel;Fax;Mail;Activite;departement;Numerodepartement
mais je me sers que de nom ,adresse, code postal, ville
eventuellement numero de departement
 
WRInaute impliqué
Re-,

Je rentre à l'instant mais en coup de vent ...

Je ne comprends pas trop bien ce que tu veux dire : tu veux un fonctionnement dynamique mais avec un site statique 8O

Si c'est ce que je pense, oui c'est possible en faisant une liste à partir d'une requête dans ta BDD, mais ça reste dynamique.

Prenons deux pages : la première (index.php) pour l'affichage de ta liste des villes, la seconde (ville.php) pour l'affichage des fleuristes de chaque ville.

Sur la première (après la connexion) :

Code:
$sql = ("SELECT DISTINCT Ville FROM maTable ORDER BY ville");
$result = mysql_query($sql);

echo '<ul>';

while ($row = mysql_fetch_assoc($result)) {
echo '<li><a href="ville.php?ville='.$row['ville'].'">'.$row['ville'].'</li>';
}

echo '</ul>';

Sur la seconde :

Code:
$ville = $_GET['ville'];

$sql = ("SELECT nom,adresse,tel,fax,mail FROM maTable WHERE ville='$ville' ORDER BY nom");
$result = mysql_query($sql);

echo '<ul>';

while ($row = mysql_fetch_assoc($result)) {
echo $row['nom'];
echo '<br />';
echo $row['adresse'];
echo '<br />';
echo $row['tel'];
echo '<br />';
echo $row['fax'];
echo '<br />';
echo $row['mail'];
echo '<br />';
}

Rem 1 : deux tables seraient mieux (villes - fleuristes)
Rem 2 : un identifiant unique (clé primaire) serait mieux que le nom de la ville pour passer les paramètres, sinon mets toujours un index sur le nom de la ville.

Voili, je reviens aux nouvelles tantôt

++
 
WRInaute discret
:lol: ça c'est cool, je commence à y voir plus clair!!!
je suis resté 2 heures au telephone, donc du coup, g grillé mon capital temps pour faire tout ça.
Je me leve encore à 4h30 :cry:

En fait, g une cle primaire en autoincrement effectivement mais vu que je suis une ptite brele, je n'ai pas pensé que c'etait important du fait que je sais pas trop à quoi ça sert :roll: mais bon, je l'avait quand meme fait.

T'as parfaitement raison au sujet des 2 pages...

Au sujet de mon site en statique, c'est parceque je veux que les internautes accedent à mon site via les pages generees ( fleuristes des villes) par l'intermediaire de google, et non pas qu'ils accedent à ces pages via un menu...
c'est aussi l'interet, mais je veux capter ainsi des internautes,=!ù:;-*+

je sais pas si c'est tres clair tout ça!!!

Donc en fait, je ne veux meme pas un fonctionnement en dynamique, mais juste generer ces pages via ma bdd MySQL et qu'elles soient statiques, constament presentes sur mon site.
g pas été clair dans mes explications au debut, comme d'habitude :roll: :?: :!: :idea: :arrow:

Donc je reprend tout ça demain apres midi des que je reviens parcequelà c'est l'heure du dodo :oops:
 
WRInaute impliqué
Au sujet de mon site en statique, c'est parceque je veux que les internautes accedent à mon site via les pages generees ( fleuristes des villes) par l'intermediaire de google, et non pas qu'ils accedent à ces pages via un menu...
c'est aussi l'interet, mais je veux capter ainsi des internautes,=!ù:;-*+

Je ne comprends toujours pas ...

je sais pas si c'est tres clair tout ça!!!

Non, ça ne l'est pas :lol:

Donc en fait, je ne veux meme pas un fonctionnement en dynamique, mais juste generer ces pages via ma bdd MySQL et qu'elles soient statiques, constament presentes sur mon site.
g pas été clair dans mes explications au debut, comme d'habitude Rolling Eyes Question Exclamation Idea Arrow

Enfin, ça y'est, je pense que j'ai compris : c'est toi qui n'a pas compris ;)

Même si tes pages sont générées dynamiquement, elles existent bel et bien et sont présentes sur ton site, chaque ville de la base de donnée générant une page.

Par contre je n'ai toujours pas compris le coup des pages générées par Google 8O


L'idéal en plus serait de saupoudrer le tout avec une pincée d'url rewriting avant de servir :p

Quand t'es prêt on y va
 
WRInaute discret
Salut SUPERCUREUIL

Je viens en fait de revenir il y a 30 mn chez moi...

T'as raison, j'avais pas vraiment saisi le fonctionnement du php :oops:
et quant à la génération de page par google, oublie ça, en fait je voulais simplement dire que d'apres une requete sur google, des resultats sortent et non pas
que google genere mes pages :? je me suis mal exprimé :lol:

Alors, j'ai fait comme tu m'as dit:
***j'ai créé un fichier db_conf.inc.php

et j'ai mis ton code dedans

<?php
$host="localhost"; (-> ne change normalement pas)
$login="ton login";
$pass="ton mot de passe";
$base="le nom de ta base";

$dp = mysql_connect($host,$login,$pass) or die ("Le serveur ne répond pas");
mysql_select_db($base, $dp) or die ("Connexion à la base $base impossible");
?>


*** J'ai créé ma page index.php, et j'ai mis ton code avant la <head>

<?php
require_once("inc/db_conf.inc.php");
?>

***J'ai fait de meme pour ma page villes

<?php
require_once("inc/db_conf.inc.php");
?>



J'ai transféré tout avec file zilia, mais quand j'essaie de me connecter, à mon site, ça ne marche pas! j'ai déja fait une boulette non? :roll:

ça me met ça...

Warning: main(inc/db_conf.inc.php) [function.main]: failed to open stream: No such file or directory in /home/local/apache/htdocs/sites/m/mobilier-jardin.biz/livraison-fleurs/index.php on line 4

Fatal error: main() [function.require]: Failed opening required 'inc/db_conf.inc.php' (include_path='.:/usr/local/lib/php') in /home/local/apache/htdocs/sites/m/mobilier-jardin.biz/livraison-fleurs/index.php on line 4



Je suis vraiment trop nul, j'arrive meme pas a faire ça!!!
 
WRInaute discret
en fait, j'ai rajouté un dossier inc dans mon arborescence qui n'existait pas, et j'ai mis le fichier db_conf.inc.php
à l'interieur, mais maintenant je bloque, je sais pas si g fait une connerie ou bien!
j'essaie de refléchir encore :wink:
 
WRInaute impliqué
Salut,

Je viens de rentrer aussi, décidément, on va y mettre une semaine à ce rythme là :mrgreen:

Alors, j'ai fait comme tu m'as dit:
***j'ai créé un fichier db_conf.inc.php

et j'ai mis ton code dedans

<?php
$host="localhost"; (-> ne change normalement pas)
$login="ton login";
$pass="ton mot de passe";
$base="le nom de ta base";

C'est concon mais as-tu bien remplacé les valeurs des variables par tes identifiants ?

Sinon qu'obtiens-tu à présent sur tes pages index.php et ville.php ?

++
++
 
WRInaute discret
vi vi, j'avais bien mis mes identifiants.

Maintenant, ça me met ça quan j'essaie de me connecter:

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /home/local/apache/htdocs/sites/m/mobilier-jardin.biz/livraison-fleurs/inc/db_conf.inc.php on line 2

alors je sais vrament pas comment faire désolé.

je t'envoie mes identifiants en MP peut etre tu as une idée?
 
WRInaute occasionnel
le problème vient ici de la ligne 2 de ton vichier db_conf.inc.php

à mon humble avis, tu as du laisser (-> ne change normalement pas)
si c'est celà, enlève le ou tu peux le mettre en commentaire //(-> ne change normalement pas)
 
WRInaute discret
Tu as tout à fait raison , :p j'avais fait cette erreur, et je l'ai rectifié juste avant que tu m'envoies ce message :lol:
et maintenat, ça me met:

Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /home/local/apache/htdocs/sites/m/mobilier-jardin.biz/livraison-fleurs/inc/db_conf.inc.php on line 7
Le serveur ne répond pas

je suis hebergé chez sivit, et pour acceder à ma bdd, je ne passe pas par localhost, mais par sql1.mobilier-jardin.biz
je me suis dit que de là venait peut etre le probleme, alors j'ai fait plusieurs combinaisons, mais toujours rien, peut etre car j'ai mis le nom de ma base mais pas celui de ma table...

Alors, je suis passé par WAMP, phpmyadmin ou j'ai aussi créé une bdd, cette fois en localhost, mais là toujours le meme message.

j'ai essayé avec une page vierge que j'ai nommé ville.php ou j'ai juste mis le code

<?php
require_once("inc/db_conf.inc.php");
?>

J'ai essayé avec ma page type ma page d'accueil que j'ai renommé ville.php, ou j'ai mis le meme code avan-t la balise <head>

et le meme message...


Je continue à chercher...
 
WRInaute occasionnel
avec wamp en local l'utilisateur s'appelle root, le mot de passe est vide si tu n'as rien changer à la configuration... l'host est localhost

sur ton serveur :

tu peux chercher dans ton fichier config de phpmyadmin

Code:
$cfg['Servers'][$i]['host']          = ''; // MySQL hostname or IP address
....
$cfg['Servers'][$i]['user']          = '';      // MySQL user
$cfg['Servers'][$i]['password']      = '';          // MySQL password (only needed
                                                    // with 'config' auth_type)
$cfg['Servers'][$i]['only_db']       = '';          // If set to a db-name, only

les valeurs que tu dois trouver là dedans, tu peux les réutiliser dans ton fichier db_conf.inc.php

si phpmyadmin fonctionne alors ça doit être les bonnes valeurs
 
WRInaute discret
En fait, je me suis pris la tete avec filezilia, ça fait une heure que je faisais mes manips, mais il n'en tenait pas compte, j'ai du vider les dossiers que j'avais placé, carément éteindre mon ordinateur, et au redemarage, comme par enchantement, en remetant les memes fichiers en ligne, ça a marché.

c'est pas la premiere fois que ça me fait le coup.... alors que j'avais fait les choses correctement, filezilia n'enregistrait pas ce que je lui disait de faire. la seule solution, redemarrer l'ordi, c'est fou ça 8O

Bref, du coup,maintenant, quand j'affiche ma page ville.php elle s'affiche de façon normale. :D

un gros soulagement!!


1ere étape réussie ( enfin je pense)

Maintenant, me reste à travailler avec le code:
mais je ne sais pas comment faire, si je dois le mettre dans ma page ville.php et si oui, comment?

$sql = ("SELECT DISTINCT Ville FROM maTable ORDER BY ville");
$result = mysql_query($sql);

echo '<ul>';

while ($row = mysql_fetch_assoc($result)) {
echo '<li><a href="ville.php?ville='.$row['ville'].'">'.$row['ville'].'</li>';
}

echo '</ul>';


en tout cas, j'ai l'impression d'avancer, meme si on m'aide quand meme EEENNNORMEMENT...
 
WRInaute impliqué
Hello,

tu dois modifier le 'maTable' par le nom de ta table :mrgreen:

Si les champs que tu as indiqués sont les bons, la requête devrait fonctionner et afficher une liste de liens dont les anchors sont les villes de ta BDD.

En cliquant sur un lien, tu devrais obtenir les fleuristes qui habitent dans la ville qui vient d'être cliquée.

Si ça roule pour ça on verra pour tes titres et tout le toutim ... :D

++
 
WRInaute discret
Salut :lol:
ne me frappez surtout pas sur les doigts...

je reprend... dans ma page index.php, j'ai mis le code php:

<?php
require_once("inc/db_conf.inc.php");
?>

au dessus de <head>

j'ai mis la page en ligne...

ok, ça roule.

La deuxieme partie du code, avec le nom de ma table ;)

je dois la remettre sur la page index.php et la remettre en ligne pour que
les villes s'affichent?
 
WRInaute discret
***quand je met le code avec macromedia dreamweaver:

$sql = ("SELECT DISTINCT Ville FROM livraison_fleurs ORDER BY ville");
$result = mysql_query($sql);

echo '<ul>';

while ($row = mysql_fetch_assoc($result)) {
echo '<li><a href="ville.php?ville='.$row['ville'].'">'.$row['ville'].'</li>';
}

echo '</ul>';

la partie <a href="ville.php?ville='.$row['ville'].'"> s'affiche en jaune, j'ai déplacé ' avec space et ça se met plus en jaune maintenant...


***ça me met ça sur ma page (visible)

$sql = ("SELECT DISTINCT Ville FROM livraison_fleurs ORDER BY ville"); $result = mysql_query($sql); echo '

***une partie de mon texte sur la page s'est transformé en lien clicable,

si je clique, un sous dossier apparait, nommé:

/ville.php?ville='.$row['ville'].'
 
WRInaute discret
euh, je voulais dire, ma page ville.php apparait comme ça
/ville.php?ville='.$row['ville'].'

avec rien dedans, a part ce qui est deja present
 
WRInaute impliqué
Si tu testes tes pages dans DW, c'est normal qu'elles ne fonctionnent pas parce que tu as besoin d'un serveur pour interpréter le php :wink:

Par ailleurs, si tu ne passes pas une variable en paramètre, la page ville.php n'affichera rien en l'état, au pire une erreur même ...

Hinhinhin, bon, je vais te donner le code qui doit normalement fonctionner : :mrgreen:

Pour index.php :

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">

<?php
require_once("inc/db_conf.inc.php");
?>


<head>

	<title>Les villes fleuries de France</title>

		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>

<body>

<?php
$sql = ("SELECT DISTINCT Ville FROM maTable ORDER BY ville");
$result = mysql_query($sql);

echo '<ul>';

while ($row = mysql_fetch_assoc($result)) {
echo '<li><a href="ville.php?ville='.$row['ville'].'">'.$row['ville'].'</li>';
}

echo '</ul>'; 
?>

</body>

</html>

Pour ville.php :

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">

<?php
require_once("inc/db_conf.inc.php");
?>


<head>

	<title>Les fleuristes de <?php echo $_GET['ville']; ?></title>

		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>

<body>

<?php
ville = $_GET['ville'];

$sql = ("SELECT nom,adresse,tel,fax,mail FROM livraison_fleurs WHERE ville='$ville' ORDER BY nom");
$result = mysql_query($sql);

while ($row = mysql_fetch_assoc($result)) {
echo '<ul>';
echo '<li>$row['nom']</li>';
echo '<li>$row['adresse']</li>';
echo '<li>$row['tel']</li>';
echo '<li>$row['fax']</li>';
echo '<li>$row['mail']</li>';
echo '</ul>';
}
?>

</body>

</html>

Pour la mise en page css libre à toi d'arranger tout ça ...

ça DOIT fonctionner :mrgreen:

Tiens-nous au courant ...

++
 
WRInaute discret
En fait, la page index.php telle qu'elle apparait avec ce que tu viens de me donner, apparait comme ça:
.
.
.
.
.
.
.
.
.

une multitude de points, qui doivent correspondre aux villes normalement.
quand je fais afficher source de la page, ça me met ça:

<ul><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?ville="></li><li><a href="ville.php?

enfin, encore beaucoup plus, mais je me suis dit que si je mettais tout, vous alliez m'en vouloir un peu plus.

Bon, c'est l'heure ou je tire ma reverence, je dois aller me coucher.
Merci encore pour l'aide que vous me donnez ...
:D :D

je m'y remet demain apres midi. je vous tiens au courant de mon avancement :wink:

Bonne soirée
 
WRInaute impliqué
:oops:

J'avais oublié de modifier la requête sur la page index, ça doit donner ceci :

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">

<?php
require_once("inc/db_conf.inc.php");
?>


<head>

   <title>Les villes fleuries de France</title>

      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

</head>

<body>

<?php
$sql = ("SELECT DISTINCT ville FROM livraison_fleurs ORDER BY ville");
$result = mysql_query($sql);

echo '<ul>';

while ($row = mysql_fetch_assoc($result)) {
echo '<li><a href="ville.php?ville='.$row['ville'].'">'.$row['ville'].'</li>';
}

echo '</ul>';
?>

</body>

</html>

Et maintenant ?
 
WRInaute discret
Salut ,

c'est au top pour la page d'index, donc c'est la premiere fois que je vois les possibilités du php :D :lol: :lol: c de la bombe.

toutes les villes s'affichent parfaitement, j'ai galéré un peu pour le style.css mais je m'en suis sorti.

Quant ville.php, ça veut pas fonctionner, quand je clique sur une ville sur l'index,
par exemple Albi, l'url de cette page sort comme ça: /ville.php?ville=ALBI
et sur la page, ça me met: Parse error: syntax error, unexpected '=' .... alors j'essaie de voir par rapport à ma table, mais tout à l'air ok par rapport à ton code.

Alors je sais pas trop, j'essaie de chercher :wink:
 
WRInaute impliqué
Re,

c'est au top pour la page d'index, donc c'est la premiere fois que je vois les possibilités du php Very Happy Laughing Laughing c de la bombe.

Content que tu adhères :lol:

Sinon pour tes erreurs :

:oops: :oops: Corrige déjà cette ligne :

Code:
ville = $_GET['ville'];

En la remplaçant par celle là :

Code:
$ville = $_GET['ville'];

:oops: :oops: Ensuite cette partie là :

Code:
while ($row = mysql_fetch_assoc($result)) {
echo '<ul>';
echo '<li>$row['nom']</li>';
echo '<li>$row['adresse']</li>';
echo '<li>$row['tel']</li>';
echo '<li>$row['fax']</li>';
echo '<li>$row['mail']</li>';
echo '</ul>';
}

Par celle-ci

Code:
while ($row = mysql_fetch_assoc($result)) {
echo '<ul>';
echo '<li>'.$row['nom'].'</li>';
echo '<li>'.$row['adresse'].'</li>';
echo '<li>'.$row['tel'].'</li>';
echo '<li>'.$row['fax'].'</li>';
echo '<li>'.$row['mail'].'</li>';
echo '</ul>';
}

Quand on veut aller trop vite hein :wink:

Normalement ça devrait fonctionner cette fois :twisted:
 
WRInaute discret
Salut,

ça marche nikel, y'a rien à dire, chapeau bas l'artiste :lol: .
pour mon index.php, j'ai resolu le probleme de ma feuille de style, mais pour
ville.php, avec ma feuille de style, j'arrive pas à trouver la balise qu'il faudrait que je rajoute pour englober <?php?> sinon, sans feuille de style, c'est nikel, mais bon :?
pour ville.php, j'ai juste englobé comme ça: <div id="left1"><ul><?php?></ul><div id="left1">
c nikel, mais pour ville.php, ça me pose probleme.

voici une partie de ma feuille de style.
c'est pas le meme sujet, mais là je bloque un peu. si il y a juste un tit conseil, je suis preneur.

En tout cas, je suis super content...


/*------------------------------------------------left1--------------------*/
#left1{
width:447px;
margin:0 27px 0 0;
padding:0 0 35px 0;
float:left;
}
#left1 h2{
font:bold 34px/40px Georgia, "Times New Roman", Times, serif;
color:#202020;
background-color:inherit;
text-transform:uppercase;
margin:0 0 21px 0;
}
#left1 h2 span{
font:normal 30px/18px Verdana, Arial, Helvetica, sans-serif;
color:#970000;
background-color:inherit;
display:block;
}
#left1 ul{
width:450px;
padding:0;
margin:0;
font-size:0;
}
#left1 ul li{
padding:0;
margin:0;
height:24px;
}
#left1 ul li a{
display:block;
background:url(images/arrow_green2.gif) 0 7px no-repeat #fff;
background-color:inherit;
padding:0 0 0 15px;
font:normal 12px/24px Verdana, Arial, Helvetica, sans-serif;
color:#202020;
margin:0;
text-decoration:none;
}
#left1 ul li a:hover{
color:#202020;
background-color:#FFFFFF;
}
#left1 p.leftText1{
font:normal 12px/17px Verdana, Arial, Helvetica, sans-serif;
color:#251C00;
background-color:inherit;
margin:0 0 24px 0;
display:block;
width:447px;
}
#left1 p.leftText1 span{
font:bold 12px/17px Verdana, Arial, Helvetica, sans-serif;
color:#006882;
background-color:#FFFEFA;
}
#left1 p.leftText1 a.link1{
font:normal 12px/17px Verdana, Arial, Helvetica, sans-serif;
color:#1B7D01;
background-color:inherit;
text-decoration:underline;
}
#left1 p.leftText1 a.link1:hover{
color:#1B7D01;
background-color:#F7F0D9;
text-decoration:none;
}
#left1 a.link2{
background:url(images/left_link_bg.gif) 0 0 no-repeat #F0FFFF;
padding:0 0 0 54px;
font:bold 18px/39px Georgia, "Times New Roman", Times, serif;
color:#144848;
width:390px;
height:41px;
display:block;
text-decoration:none;
}
#left1 a.link2:hover{
background:url(images/left_link_bg_hover.gif) 0 0 no-repeat;
}
/*------------------------------------------------left1--------------------*/
 
WRInaute impliqué
Heu, ravi que ça fonctionne, j'espère surtout que ça t'a donné envie de t'intéresser au langage :D

Pour t'aider pour la css, il faudrait voir avec une url, ça serait beaucoup plus facile.

Evite déjà les id (#) pour des div qui se trouvent dans une boucle (while ...) et remplace les par une classe(.)

++
 
WRInaute discret
ça fait un petit moment que je m'interesse au langage, j'ai lu les topics sur lesiteduzero, mais je me suis dit que sans exemple concret, je mettrais peut etre 6 mois avant de faire ce que tu m'as montré.
Maintenant que j'ai un exemple concret des possibilités, je vais maintenant reprendre les bases et m'y interesser plus serieusement.


Tu peux aller voir ce que j'ai fait sur www.777vegas777.com
c'est pas cet url que sera placé tout ça, mais vu que j'avais rien dessus pour le moment...

encore une petite question:

maintenant, comment ça marche avec par exemple google et le php.
si par exemple, j'avais fait pareil avec des pages en .html , une grande partie de mes pages devraient etre referencées (ées ou pas ées , je sais plus :oops: ) par google.
qu'en est il avec .php ?
je vais dire encore une connerie, mais toutes mes pages existent elles vraiment, ou sont générees uniquement si l'internaute va les chercher?

ps: jetais pas là de l'apres midi, mon tit bateau s'est échoué et j'ai un peu galéré, mais bon, je sais, c'est pas interessant... :?

en ce qui concerne le css, je planche dessus.
 
WRInaute occasionnel
tes pages sont générés à chaque fois qu'un utilisateur la demande (sauf la page index qui existe en vrai mais qui est quand même générée). Pour google, il(elle) est un "utilisateur" aussi donc la page est générée pour lui. Je ne pense pas que ça le gène beaucoup de voir une seule variable en URL et à ce que j'ai pu lire ici et là, ça ne gène pas! Si tu voulais faire quelque chose de vraiment beau tu peux utiliser l'url rewritting qui te donnerai quelque chose comme albi.html mais c'est plus du php (le code reste en php mais la technique ne découle plus du php) et c'est une autre partie du forum. En parlant de reprendre les bases (c'est un je de mots avec bases du php et bases de données), je te conseillerai de donner un identifiant unique à toutes tes villes dans ta base de données et d'appeler les pages par identifiants plutôt que par le nom de la ville qui n'est pas forcément une clef unique.

(je m'aperçois que j'ai autant de mal à taper qu'à parler quand je suis bourré, ça se voit pas dans le mail mais je viens de faire vieillir la touche delete de 10 ans)
 
WRInaute discret
Ou là là, j'ai comme l'impression que l'url rewriting a l'air un tit peu compliqué 8O :?
je crois que c'est pas gagné cette histoire!!!
En tout cas, c'est mon but pour que les titres de mes pages soient propres .

Donc si je comprend bien, a priori, toutes mes pages issues du code php sont suceptibles d'etre referencees par google?
en gros, toutes les pages issues de l'index, (les villes) sont suceptibles d'etre referencees par google? meme si elles ne sont pas statiques, a part l'index?

Je commence à comprendre petit à petit au sujet des identifiants uniques.

C'est pour cela que supercureuil me parlait de creer 2 tables je crois.
mais ma premiere table, j'ai pas eu trop de mal a la faire , juste un petit transfert de donnees, mais la deuxieme... faudrait que je retravaille dessus.
 
WRInaute impliqué
Salut Patrick

Ou là là, j'ai comme l'impression que l'url rewriting a l'air un tit peu compliqué

Pas du tout (ou presque)

Pour tes deux tables c'était plus pour une question de maintenance, mais dans ton cas ce n'est pas encore une obligation.

Par contre une clé primaire serait bien ...

Pour la suite sorry mais j'ai fêté un anniversaire hier et je ne serai pas opérationnel avant ce soir au plus tôt ... j'ai un de ces mal de crâne :mrgreen:

++
 
WRInaute discret
Salut,

c'est cool à vous!!
à ce que je vois, tout le monde était bourré hier soir :lol: :wink: :wink: :wink:

A plus tard :)
 
WRInaute impliqué
re-,

Bin je suis allé voir ta page mais je ne comprends pas trop ce que tu voudrais faire ...

Tu utilises des tableaux pour les pages des villes ... et ma foi ça se tient, mais que voudrais-tu savoir au fait ? :D
 
WRInaute discret
Salut Supercureuil,

Le tableau que tu vois, ce n'est pas ça qui est généré par ton code php. Ce qui est généré, c'est les toutes petites écritures en pates de mouches, à peine visible.
qui sont juste au dessus, et qui se superposent meme au tableau
Je n'arrive pas à l'integrer dans ma feuille de style...

Je dois m'absenter 2 heures donc je verrais ça à mon retour.

Ce que je vodrais savoir en fait, c'est à propos de l'url rewriting, comment je dois faire pour changer les titres générés par php en titres plus lisibles, que je pourrais configurer comme je veux.

J'espere c pas trop compliqué :?
 
WRInaute impliqué
Dans ton code sur la page ville.php, ajoute une classe pour la liste qui est générée :

Code:
<ul class="liste_fleuriste">

Ensuite dans ta css tu peux en faire ce que tu veux ...

Pour l'url rewriting, tu dois placer un fichier .htaccess à la racine de ton site pour indiquer au serveur apache comment il doit réécrire tes urls et servir, par exemple

http://www.777vegas777.com/ville.php?ville=AIME

Quand tu demandes

http://www.777vegas777.com/fleuristes/aime.php

Un cours là dessus serait trop long (et je serais incapable de te le donner :mrgreen:) mais tu peux consulter 'article d'Olivier et la partie du forum qui est réservée à l'url rewriting.

Bon travail !
 
WRInaute discret
T'es au top supercureuil tout est ok :lol: :lol: :lol: :lol:
Je me met dès a present à l'url rewriting.
Je te tiens au courant de l'avancement de tout ça. GENIAL.

En tout cas, je te remercie ainsi qu'à erestrebian.

Bon, je m'y met, j'ai encore du travail ;)
 
WRInaute impliqué
T'es au top supercureuil tout est ok

Oh, je t'ai juste donné un petit coup de main :mrgreen:

Ben content que ça fonctionne, c'est la première fois que je fais un post de secours aussi long :D

Mais sans vouloir gâcher ta joie, sous Firefox 2.0.0.12 ton design ressemble aux tranchées pendant la guerre 14-18 :wink:

Bon courage et p'têtre à bientôt :D
 
WRInaute discret
Salut SuperCureuil,

Je te remercie encore de la petite aide que tu m'as donné :)
J'ai minimisé les dégats avec mon design sous firefox, c'est moins pire :D
c'etait pa une guerre de tranchees, c'etait Tchernobyl...
Ca y est, je me met gentiment à l'url rewriting, en tout cas je te tiendrais au jus des avancees de ton "poulain" :lol: en MP
a+ et encore un gros merci
 
WRInaute impliqué
N'hésite pas à poser des questions sur le forum consacré à cette thématique, il y a quelques mordus qui t'aideront à coup sûr :D

++
 
Discussions similaires
Haut