Script Citation aleatoire en PHP et SQL en 17 lignes

Zemanta Related Posts Thumbnail

Ce script vous génère une citation aléatoire importé depuis votre base de donnée.

Script Aleatoire de Citation en PHP/SQL
Script Aleatoire de Citation en PHP/SQL

Les valeurs à adapter à votre DB sont les suivantes :

$db_name = 'test'; //Le nom de votre base de donnée
$db_user= 'root'; //Votre nom d 'utilisateur
$db_password = ''; //Votre Mot de passe
$db_table = 'citation'; //La table ou se trouve votre citation
$query = "SELECT auteur, texte FROM `" . $db_table . "`
ORDER BY RAND()"
;//requete SQL de selection

Le ORDER BY RAND() permet une selection aléatoire directement dans votre requête SQL, dans ma table « citation » j’ai inséré trois « colonnes », ID, auteur, texte.

<?php
$db_name = 'test'; //Database Name
$db_user= 'root'; //Database User
$db_password = ''; //Database Password
$db_table = 'citation'; //Database Table
$con = mysql_connect("localhost",$db_user,$db_password);//connection
if (!$con) die('Could not connect: ' . mysql_error());
$result = mysql_select_db($db_name, $con);
if (!$result) die('Error selecting database: ' . mysql_error());
$query = "SELECT auteur, texte FROM `" . $db_table . "`
ORDER BY RAND()"
;//requete SQL de selection
$result = mysql_query($query) or die('Erreur de query');
$data = mysql_fetch_array($result);
mysql_free_result($result);
mysql_close();
echo "[".$data['auteur']."] « ".$data['texte']." »";
?>

2 réflexions au sujet de « Script Citation aleatoire en PHP et SQL en 17 lignes »

  1. Salut !
    Je viens de reprendre ton code et il marche super bien, ça fait pile poil ce que je voulais. Sauf qu’il y a un problème, les caractères accentués ne sont pas gérés.
    Est-ce que tu saurais me dire si ça vient de ton code ou de ma BDD ?
    Merci de ton aide !

    1. Salut, tu dois vérifier le format d’encodage dans ta DB, UTF8 ou remplace simplement tes caractères spéciaux, je te donne un exemple ci-dessous

      Caractère - Code ISO - Code HTML
      è - &#232; - &egrave;
      é - &#233; - &eacute;
      ê - &#234; - &ecirc;

Répondre à N0lek Annuler la réponse.