petit moteur de recherche avec juste datime

WRInaute occasionnel
Bonjour,
je voudrai faire un petit moteur de recherche sur mon site itnternet.
J'ai une base de données qui contien une table 'musique' qui contiend un champ 'temps' au format datime + d'autre champs dans lesquels j'ai des infos 'nom' 'description'.

je voudrai proposer un recherche du genre :
date de la musique : l'internaute choisit une date compise entre aujoud'hui et une semaine en arrière.
heure aproximative : l'internaute choisit un heure en precisant l'heure (sous forme de deroulant avec 0h 1h 2h 3h 4h......) et les minutes (sous forme de deroulant avec 00m 10m 20m 30m 40m 50m)


Savez vous comment on peut mettre en place ce genre de moteur de recherche ?
 
WRInaute passionné
A mon grand avis, tu devrais le coder tout seul.
1- je vois pas de script tout prêt
2- tu devras obligatoirement faire un mapping entre les champs de tes tables et le script
3- ... donc te taper les specs'

Tu mettras plus de temps à adapter un script qu'à le coder tout seul. D'autant plus que tu pourras afficher ce que tu voudras.
 
WRInaute occasionnel
je sais pas si je mettrai moins de temps à le faire tout seul mais faut bien apprendre en même temps.
par contre j'ai juste une table que je veus traiter sa devrait donc simplifier la chose.
je ne comprends pas
3- ... donc te taper les specs'
 
WRInaute passionné
specs' = spécifications, en l'occurrence techniques.

Puisque tu devras aller paramétrer le script pour lui indiquer quels champs sont utiles pour la recherche.

Cependant, tu devrais le coder par toi même :
- un formulaire avec quelques champs
- un script SQL qui va rechercher les plages de valeur dans la ou les tables de ton choix
- un script PHP qui récupère les résultats et les affiche.
 
WRInaute occasionnel
ok merci.
bon alors j'ai fait un formulaire :
Code:
<form id="form1" name="form1" method="post" action="#">
  <label>Date
  <select name="Date" id="Date">
  </select>
  </label>
  <label>Heure
  <select name="heure" id="heure">
    <option value="0">00</option>
    <option value="1">01</option>
    <option value="2">02</option>
    <option value="3">03</option>
    <option value="4">04</option>
    <option value="5">05</option>
    <option value="6">06</option>
    <option value="7">07</option>
    <option value="8">08</option>
    <option value="9">09</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
  </select>
  </label>
  <label>Minutes
  <select name="minute" id="minute">
    <option value="0">00</option>
    <option value="5">05</option>
    <option value="10">10</option>
    <option value="15">15</option>
    <option value="20">20</option>
    <option value="25">25</option>
    <option value="30">30</option>
    <option value="35">35</option>
    <option value="40">40</option>
    <option value="45">45</option>
    <option value="50">50</option>
    <option value="55">55</option>
  </select>
  </label>
  
</form>

pour l'affichage des resultats (bon là je resort toutes les données sans tenir compte de la recherche car je sais pas encore comment je vai faire :

Code:
<?PHP 
$requete = mysql_query("SELECT * FROM matable ORDER BY id DESC LIMIT 8"); 
while( $result = mysql_fetch_array( $requete ) )
{
?>
<?PHP echo 'Date recherchée' .$result['temps']; ?> //il faudrit décomposer le datime pour différencier date et heures
<?PHP echo 'nom' .$result['nom']; ?>
<?PHP echo 'Description' .$result[description]; ?> 
<?php } ?>


Après .... :roll: :?:
 
WRInaute passionné
Après ? Ben rien. Tu as affiché ce que tu voulais, c'est à dire le résultat de la recherche. Que veux tu faire d'autre ? peut être écouter la musique ?

Sinon il te reste à coder le code SQL qui te permet de récupérer les plages de résultat. Pour cela il te faut un petit bout de papier pour élaborer ton algorithme.
 
WRInaute occasionnel
bon j'ai essayé de faire celà mais j'ai pas de resultat.
Code:
Bonjour,
alors voià j'avance mais sa ne fonctionne pas.
j'ai donc créé un formulaire avec un champ date + un requete sql qui permet d'afficher le resultat si la date correspond bien.

[code]<form action="recherche-titre.php" method="post" enctype="multipart/form-data">
  <label>Date
  <select name="Date" id="Date">
                <?php
                setlocale(LC_TIME, 'fr_FR.UTF-8'); 
        $reqdate = mysql_query("SELECT * FROM wintitres"); 
        while( $resdate = mysql_fetch_array( $reqdate ) )
        {
                $hdiff = ucwords(strftime("%d %B %Y", strtotime($resdate['heure_diff'])))
        ?>    
        <option value="<?php echo $hdiff;?>">
                <?php echo $hdiff;?>
        </option>
        <?php } ?>  
        </select>
  </label>
  <input name="submit" type="submit" value="Rechercher" />
  </form>

    <?PHP 
    $date = $_POST['Date'];
        
        $requete = mysql_query("SELECT * FROM wintitres where ('$hdiff') = ('$date')"); 
                
                while( $result = mysql_fetch_array( $requete ) )
                {
                echo $result['artist']. ' - ' . $result['title'].' - ' . $result['duree'].'<br/>';
                } ?>

savez vous pourquoi sa ne fonctionne pas ?[/code]
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut