[PHP] Boite de news

Bonjour à tous je fais mes premiers pas en PHP et DotClear m’a vachement propulsé!
Je voudrais créer une petite page qui affiche juste les 5 dernières news de mon blog (pour faire une iframe dessus).

J’ai fait ça mais ne donne rien, je ne comprends pas pourquoi:

[code]<?
mysql_connect(“localhost”, “monpseudo”, “”);
mysql_select_db(“lenom_db”);

// On récupère les 5 dernières news
$retour = mysql_query(‘SELECT post_titre  FROM dc_post ORDER BY id DESC LIMIT 0, 5’);

while ($donnees = mysql_fetch_array($retour) )
{
echo $donnees[‘post_titre’];
echo “
”;
}

mysql_close(); // Déconnexion de MySQL
?>[/code]

Voilà ce que ça donne ici
Je suis hébergé chez Lycos…

Hum… ca devrait etre dans webdev…

Sinon essaye soit ceci :

ou encore ceci :

[quote name=‘AkyRhO’ date=’ 20 Mar 2005, 11:31’]Hum… ca devrait etre dans webdev…

Sinon essaye soit ceci :

ou encore ceci :

[right][post=“342874”]<{POST_SNAPBACK}>[/post][/right][/quote]

J’ai essayer les deux et ça ne change rien
WebDev tu veux parler du truc a 900€!?

Voici mon code perso pour afficher des liens cliquables avec lé but le début des 5 derniers posts. Ca donne ceci.[codebox]// pour afficher les cinq derniers posts, avec des liens
function cinq_derniers_posts ()
{
print(’

    ’);
	$query = mysql_query("SELECT * FROM `dc_post` WHERE `post_pub` = '1' ORDER BY `post_id` DESC LIMIT 5;") OR die(mysql_error());

	while ($mysql_query = mysql_fetch_array($query))
	{
		$numero_post = $mysql_query['post_id'];
		$date = $mysql_query['post_dt'];
		$titre = $mysql_query['post_titre'];
		$titre_url = $mysql_query['post_titre_url'];
		$nb_comment = $mysql_query['nb_comment'];

		/* afficher un teaser des posts */
		$chapeau = $mysql_query['post_chapo'];
		$contenu = $mysql_query['post_content'];

		if ($chapeau != '') {$teaser = $chapeau;}
		else {$teaser = $contenu;}

		$teaser = strip_tags($teaser);
		if (strlen($teaser) > 80) {
			$teaser = substr($teaser, 0, 80);

			// pour arrêter l'affichage à un espace
			$teaser = strrev($teaser);
			while (substr($teaser, 0, 1) != ' ') {
				$teaser = substr($teaser, 1);
			}
			$teaser = strrev($teaser).' ...';
		}

		/* la date pour l'url */
		$annee = substr($date, 0, 4);
		$miniannee = substr($date, 2, 2);
		$mois = substr($date, 5, 2);
		$jour = substr($date, 8, 2);

		$url_date = $annee.'/'.$mois.'/'.$jour;

		$url = '/blog/'.$url_date.'/'.$numero_post.'-'.$titre_url;

		print('<li>');
		print('<a href="'.$url.'#main" title="Voir le billet : '.$titre.'">'.$titre.'</a> (+'.$nb_comment.') ('.$jour.'/'.$mois.'/'.$miniannee.') - '.$teaser);
		print('</li>'."\n");
	}

	print('</ul>'."\n");
}[/codebox]

Ca ne marche tjs pas, ça doit etre un problème au niveau de la connexion à la base de donnée. Pourtant j’utilise bien les informations que lycos m’a fourni… Enfait pour se connecter à la base de donnée je n’ai pas besoin de mot de passe

$db = mysql_connect("localhost","indentifiant",""); mysql_select_db("indentifiant_db",$db);
(code trouvé sur le site de Lycos)
Donc je dois laisser l’espace pour le mot de passe vide ou carrément virer les “” ?

ou alors je dois utiliser un code dans ce genre la pour la connexion

mysql_connect("localhost", "indentifiant", ""); mysql_select_db("indentifiant_db"); . . . mysql_close();

Bon j’ai fait des tests de connection mysql et il n’y a aucun probs GGrrr Lycos

[quote name=‹ shinoli › date=’ 20 Mar 2005, 11:43’]WebDev tu veux parler du truc a 900€!?
[right][post=« 342876 »]<{POST_SNAPBACK}>[/post][/right][/quote]
Non je parlais du sous forum de Segmentation Fault :stuck_out_tongue:

EDIT : si tu penses que ton erreur viens de la connexion a la base de donnée, fait ceci :

mysql_connect("localhost", "monpseudo", "") or die("erreur BDD"); mysql_select_db("lenom_db") or die("Erreur sélection BDD");
Tu seras vite fixé :stuck_out_tongue:

Bon je n’ai toujours pas résolu mon problème, et après quelques tests je remarque que le prob ne se situe pas au niveau de la connexion
Le résultat

[code]<?

$serveur = “”;
$utilisateur = “”;
$motPasse = “”;
$nomBaseDonnee = “”;
$connexion = mysql_connect($serveur,$utilisateur,$motPasse) or die(‘Erreur de connexion!’);
$db = mysql_select_db($nomBaseDonnee, $connexion) or die(“erreur de connexion a la base de donnees”);

if ($connexion>0)
    echo “connexion effectuée”;
  else
    echo “pas de connexion active”;
// pour afficher les cinq derniers posts, avec des liens
function cinq_derniers_posts ()
{
print(’

    ’);

    $query = mysql_query(“SELECT * FROM dc_post WHERE post_pub = ‘1’ ORDER BY post_id DESC LIMIT 5;”) OR die(mysql_error());

    while ($mysql_query = mysql_fetch_array($query))
    {
    $numero_post = $mysql_query[‘post_id’];
    $date = $mysql_query[‘post_dt’];
    $titre = $mysql_query[‘post_titre’];
    $titre_url = $mysql_query[‘post_titre_url’];
    $nb_comment = $mysql_query[‘nb_comment’];

    /* afficher un teaser des posts */
    $chapeau = $mysql_query[‘post_chapo’];
    $contenu = $mysql_query[‘post_content’];

    if ($chapeau != ‘’) {$teaser = $chapeau;}
    else {$teaser = $contenu;}

    $teaser = strip_tags($teaser);
    if (strlen($teaser) > 80) {
    $teaser = substr($teaser, 0, 80);

    // pour arrêter l’affichage à un espace
    $teaser = strrev($teaser);
    while (substr($teaser, 0, 1) != ’ ‘) {
    $teaser = substr($teaser, 1);
    }
    $teaser = strrev($teaser).’ …’;
    }

    /* la date pour l’url */
    $annee = substr($date, 0, 4);
    $miniannee = substr($date, 2, 2);
    $mois = substr($date, 5, 2);
    $jour = substr($date, 8, 2);

    $url_date = $annee.’/’.$mois.’/’.$jour;

    $url = ‘http://membres.lycos.fr/shinoli/blog/’.$url_date.’/’.$numero_post.’-’.$titre_url;

    print(’

  • ’);
    print(’’.$titre.’ (+’.$nb_comment.’) (’.$jour.’/’.$mois.’/’.$miniannee.’) - ‘.$teaser);
    print(’
  • ’."\n");
    }

    print(’

’."\n");
}
mysql_close($connexion);
?>[/code]
Mais d’où vient ce *%#~ problème ?

[quote name=‹ shinoli › date=’ 20 Mar 2005, 11:27’]$retour = mysql_query(‹ SELECT post_titre FROM dc_post ORDER BY post_id DESC LIMIT 0, 5 ›);
[right][post=« 342873 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Bah je viens de tester ton premier exemple et ca marche chez moi ©. :stuck_out_tongue:

[quote name=‹ unreal › date=’ 24 Mar 2005, 20:29’]Bah je viens de tester ton premier exemple et ca marche chez moi ©. :stuck_out_tongue:
[right][post=« 343963 »]<{POST_SNAPBACK}>[/post][/right][/quote]
Bah ouais ça m’énerve, ça vient surment de lycos

Vu que le reste du blog fonctionne, je pense pas que ca vienne de lycos, checke bien ton login, password, nom de ta base et la petite modif que j’ai signalee en gras dans mon post precedent. :stuck_out_tongue: