comment récupèrer les valeurs des champs d'une table sql ?
13 messages
• Page 1 sur 1
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
comment récupèrer les valeurs des champs d'une table sql ?
bonjour,
qui pourrait m'aider à remplir ce script pour la creation d'un flux rss ?
sachant que ma table est nommée : xlagenda et
que je souhaite récupérer les champs suivants : date description contact
cette c'est ok ! mon script se connecte à la base !
Voila la prtie que j'arrive pas à renseigner...
merci pour votre aide
pascal
qui pourrait m'aider à remplir ce script pour la creation d'un flux rss ?
sachant que ma table est nommée : xlagenda et
que je souhaite récupérer les champs suivants : date description contact
cette c'est ok ! mon script se connecte à la base !
- Code: Tout sélectionner
// connexion a la base
@mysql_connect($host,$user,$pwd) or die("Connexion impossible");
@mysql_select_db($base) or die("Echec de selection de la base");
// selection des 5 dernieres news
$res=mysql_query("SELECT * FROM news ORDER BY date DESC LIMIT, 5");
Voila la prtie que j'arrive pas à renseigner...
- Code: Tout sélectionner
// extraction des informations et ajout au contenu
while($tab=mysql_fetch_array($res)){
$titre=$tab[titre];
$lien=$tab[lien];
$description=$tab[description];
$date=$tab[date];
$date2=date("D, d M Y H:i:s", strtotime($date));
$xml .= '<item>';
$xml .= '<title>'.$titre.'</title>';
$xml .= '<link>'.$lien.'</link>';
$xml .= '<pubDate>'.$date2.' GMT</pubDate>';
$xml .= '<description>'.$description.'</description>';
$xml .= '</item>';
}
merci pour votre aide
pascal
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
Re: comment récupèrer les valeurs des champs d'une table sq
quicherche a écrit:bonjour,
qui pourrait m'aider à remplir ce script pour la creation d'un flux rss ?
sachant que ma table est nommée : xlagenda et
que je souhaite récupérer les champs suivants : date description contact
cette c'est ok ! mon script se connecte à la base !
- Code: Tout sélectionner
// connexion a la base
@mysql_connect($host,$user,$pwd) or die("Connexion impossible");
@mysql_select_db($base) or die("Echec de selection de la base");
// selection des 5 dernieres news
$res=mysql_query("SELECT * FROM news ORDER BY date DESC LIMIT, 5");
Ta table se nomme : xlagenda
tu veux récupérer les champs : date, inscription et contact.
Essaye déjà de modifier ton SELECT :
- Code: Tout sélectionner
SELECT date, inscription, contact
FROM xlagenda
ORDER BY date desc
LIMIT 0,5
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
merci
bonjour et merci car c'est deja mieux...
cependant j'ai encore un petit message d'erreur qui empêche le bon fonctionnement du script :
message d'erreur :
et voici la ligne 14 :
merci pour ton aide
tahiti
cependant j'ai encore un petit message d'erreur qui empêche le bon fonctionnement du script :
message d'erreur :
- Code: Tout sélectionner
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/sites/site180/web/agenda-tahiti-actualite-heiva/maj-rss.php on line 14
et voici la ligne 14 :
- Code: Tout sélectionner
while($tab=mysql_fetch_array($res)){
merci pour ton aide
tahiti
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
non pas de test ! je suis trop novice pour le faire...
voici un extrait de la table :
...desole de ne pas pouvoir te donner plus d'élément ! mais n'hésite pas si tu as besoin d'autres détails.
encore merci
pascal
voici un extrait de la table :
- Code: Tout sélectionner
//CREATION DE LA TABLE XLAGENDA
mysql_select_db("$dbdb");
$query="CREATE TABLE $table_agenda (
id int(11) NOT NULL auto_increment,
nom text NOT NULL,
date_debut date NOT NULL default '0000-00-00',
date_fin date NOT NULL default '0000-00-00',
description text NOT NULL,
lieu text NOT NULL,
categorie int(11) NOT NULL default'0',
contact text NOT NULL,
adresse text NOT NULL,
email text NOT NULL,
telephone text NOT NULL,
fax text NOT NULL,
lien text NOT NULL,
url text NOT NULL,
user text NOT NULL,
actif tinyint(4) NOT NULL default '0',
KEY id (id)
)
...desole de ne pas pouvoir te donner plus d'élément ! mais n'hésite pas si tu as besoin d'autres détails.
encore merci
pascal
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
Dans mon premier SELECT je me suis planté :
c'est pas inscription mais description
je ne vois pas non plus de champ date, c'est soit date_debut, soit date_fin. Donc ta requête va devenir :
ou
ou
c'est pas inscription mais description
je ne vois pas non plus de champ date, c'est soit date_debut, soit date_fin. Donc ta requête va devenir :
- Code: Tout sélectionner
SELECT date_debut, description, contact
FROM xlagenda
ORDER BY date desc
LIMIT 0,5
ou
- Code: Tout sélectionner
SELECT date_fin, description, contact
FROM xlagenda
ORDER BY date desc
LIMIT 0,5
ou
- Code: Tout sélectionner
SELECT date_debut, date_fin, description, contact
FROM xlagenda
ORDER BY date desc
LIMIT 0,5
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
le problème reste le meme ! histoire de fou ...
voici le script en entier en espérant que celui ci pourras d'aider :
si j'arrive à faire fonctionner ce script avec ton aide, je pense que celui pourrai intérrésser plus d'un webmaster qui souhaiterai porposer un flux rss...
merci pour le temps que tu prends
tahiti
voici le script en entier en espérant que celui ci pourras d'aider :
- Code: Tout sélectionner
<?php
// édition du début du fichier XML
$xml = '<?xml version="1.0" encoding="iso-8859-1"?><rss version="2.0">';
$xml .= '<channel>';
$xml .= '<title>letitre</title>';
$xml .= '<link>adresse</link>';
$xml .= '<description>description</description>';
// connexion a la base
@mysql_connect('xxxxxxxxx','xxxxxxx','xxxxxxx') or die("Connexion impossible");
@mysql_select_db('xxxxxxx') or die("Echec de selection de la base");
// selection des 5 dernieres news
$res=mysql_query("SELECT date_debut, description, contact FROM xlagenda ORDER BY date DESC LIMIT, 0,5 ");
// extraction des informations et ajout au contenu
while($tab=mysql_fetch_array($res)){
$titre=$tab[titre];
$lien=$tab[lien];
$description=$tab[description];
$date=$tab[date];
$date2=date("D, d M Y H:i:s", strtotime($date));
$xml .= '<item>';
$xml .= '<title>'.$titre.'</title>';
$xml .= '<link>'.$lien.'</link>';
$xml .= '<pubDate>'.$date2.' GMT</pubDate>';
$xml .= '<description>'.$description.'</description>';
$xml .= '</item>';
}
// édition de la fin du fichier XML
$xml .= '</channel>';
$xml .= '</rss>';
// écriture dans le fichier
$fp = fopen("flux.xml", 'w+');
fputs($fp, $xml);
fclose($fp);
@mysql_close();
?>
si j'arrive à faire fonctionner ce script avec ton aide, je pense que celui pourrai intérrésser plus d'un webmaster qui souhaiterai porposer un flux rss...
merci pour le temps que tu prends
tahiti
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
la requête est encore fausse :
- il faut pense à remplacer date par date_debut dans le order by
- tu as un , de trop dans la LIMIT :
c'est par : LIMIT, 0, 5 mais LIMIT 0,5
Cette requête devrait marcher un peu mieux :
- il faut pense à remplacer date par date_debut dans le order by
- tu as un , de trop dans la LIMIT :
c'est par : LIMIT, 0, 5 mais LIMIT 0,5
Cette requête devrait marcher un peu mieux :
- Code: Tout sélectionner
$res=mysql_query("SELECT date_debut, description, contact FROM xlagenda ORDER BY date_debut DESC LIMIT 0,5 ");
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
En effet cela fonctionne !
exelent... cependant avant de faire une synthèse pour celles et ceux que cela intérressent, je souhaite savoir :
- si il est possible de rajouter des champs ?
exemple : nom, categorie
si oui quel est la procedure ?
faut il respecter l'ordre dans la table ?
merci encore
tahiti
exelent... cependant avant de faire une synthèse pour celles et ceux que cela intérressent, je souhaite savoir :
- si il est possible de rajouter des champs ?
exemple : nom, categorie
si oui quel est la procedure ?
faut il respecter l'ordre dans la table ?
merci encore
tahiti
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
oups j'ai été un peu vite...
dur dur pour gerer les dates !
comment faire apparaitre les dates dans l'ordre ?
il s'agit donc d'un agenda et le but et de proposer la liste des évement avenir !
a quel endroit je peux faire apparaitre les bonnes infos par rapport à la date du jour ?
tahiti
dur dur pour gerer les dates !
comment faire apparaitre les dates dans l'ordre ?
il s'agit donc d'un agenda et le but et de proposer la liste des évement avenir !
a quel endroit je peux faire apparaitre les bonnes infos par rapport à la date du jour ?
tahiti
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
quicherche a écrit:En effet cela fonctionne !
exelent... cependant avant de faire une synthèse pour celles et ceux que cela intérressent, je souhaite savoir :
- si il est possible de rajouter des champs ?
exemple : nom, categorie
si oui quel est la procedure ?
faut il respecter l'ordre dans la table ?
merci encore
tahiti
oui, tu peux rajouter tout les champs que tu veux à conditions qu'ils appartiennent aux tables sur lesquels tu fait le select.
L'ordre n'a aucune importante.
Pour prendre tout les champs :
SELECT * : cette syntaxe est déconseillé, surtout dans ton cas où presque tout les champs sont de type text.
autre syntaxe :
SELECT liste_des_champs_dont tu as besoin
SELECT date_debut, description, etc, etc.........
Il faudrait que tu trouve un tutoriel ou un ouvrage SQL pour les débutants. Sinon, là tu vas vraiment galérer.
-

quicherche - Nouveau WRInaute

- Messages: 14
- Inscription: 3 Jan 2005
quicherche a écrit:a quel endroit je peux faire apparaitre les bonnes infos par rapport à la date du jour ?
tahiti
est ce dans la ligne :
- Code: Tout sélectionner
$res=mysql_query("SELECT date_debut, description, contact FROM xlagenda ORDER BY date_debut DESC LIMIT 0,5 ");
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
Que désires-tu faire exactement ?
Effectivement c'est dans ton SELECT que tu vas filtrer tes résultats dans une clause WHERE.
ou
ou des milliers d'autre possibilités en fct° de ce que tu veux faire.
Il te faut une formation de base en SQL. Je ne connais pas de bons tutos pour débutant, il va falloir que tu en trouves un.
Effectivement c'est dans ton SELECT que tu vas filtrer tes résultats dans une clause WHERE.
- Code: Tout sélectionner
SELECT liste_des_champs_qui_vont_bien
FROM xlagenda
WHERE now() BETWEEN date_debut AND date_fin
....
ou
- Code: Tout sélectionner
SELECT liste_des_champs_qui_vont_bien
FROM xlagenda
WHERE date_debut < now()
....
ou des milliers d'autre possibilités en fct° de ce que tu veux faire.
Il te faut une formation de base en SQL. Je ne connais pas de bons tutos pour débutant, il va falloir que tu en trouves un.
13 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- max 100 sur champs de table SQL
- Champs texte table SQL avec mise en page
- [sql] Tri d'une table selon un champ dans une autre table
- sql LIKE multi valeurs
- AJAX=Listes déroulantes créées/rechargées, récupérer valeurs
- Récupérer 2 valeurs par le biais d'une seule liste
- [sql] Recencer les différentes valeurs d'un champ
- MYSQL ajout automatique de champs dans ma table
- Récupérer la valeur d'un champs en auto incrément ?
- SQL Correction de mes champs
Consultez la description détaillée des produits ou services de Google suivants : Google Insights for Search
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 8 invités
