Forums Développement Multimédia

Aller au contenu

Moteur de recherche avec Dreamweaver/PHP

CODE PHP MySQL

5 réponses à ce sujet

#1 asvns

    Ceinture Blanche

  • Members
  • Pip
  • 4 messages

Posté 08 April 2012 - 23:37 PM

Bonjour à tous!
J'ai besoin d'aide d'urgence.
Je suis entrain de creer un mteur de recherche sur dreamweaver avec plusieurs critères.
voici mon formulaire.

Image IPB


voici les critères que j'aimerai avoir.
1- quand tous les champs sont vides on affiche tout (ça c'est ok)
2- quand le champ Nom est renseigné on affiche en fonction de l'élément renseigné (ça c'est ok)
3- quand on sélectionne un critère dans le menu déroulant Auteur on ffiche en fonction du critère
4- idem comme 3
j'espère que vous avez compris le principe.
Mon souci vient que je ne sais pas comment modifier le code php de dreamweaver pour obtenir les résultat.
pour l'intant voici ce que j'ai.


<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }
  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
  switch ($theType) {
    case "text":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;  
    case "long":
    case "int":
          $theValue = ($theValue != "") ? intval($theValue) : "NULL";
          break;
    case "double":
          $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
          break;
    case "date":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;
    case "defined":
          $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
          break;
  }
  return $theValue;
}
}

$colname_rsRecherche = "-1";
if (isset($_POST['search'])) {
  $colname_rsRecherche = $_POST['search'];
}

$colediteur_rsRecherche = "-1";
if (isset($_POST['s_codEditID'])) {
  $colediteur_rsRecherche = $_POST['s_codEditID'];
 

}

$colauteur_rsRecherche = "-1";
if (isset($_POST['s_codAutID'])) {
  $colauteur_rsRecherche = $_POST['s_codAutID'];
}
mysql_select_db($database_arilConn, $arilConn);
$query_rsRecherche = sprintf("SELECT s_livres.s_liv_titre, s_livres.s_liv_desc, s_auteur.s_aut_nom, s_editeurs.s_edit_nom FROM s_livres INNER JOIN s_auteur ON s_livres.s_codAutID=s_auteur.s_autCode INNER JOIN s_editeurs ON s_livres.s_codEditID=s_editeurs.s_codEdit WHERE s_livres.s_liv_titre LIKE %s OR s_editeurs.s_edit_nom LIKE %s OR s_auteur.s_aut_nom LIKE %s AND s_auteur.s_aut_nom=%s AND s_editeurs.s_edit_nom=%s ORDER BY s_livres.s_liv_titre DESC", GetSQLValueString("%" . $colname_rsRecherche . "%", "text"),GetSQLValueString("%" . $colname_rsRecherche . "%", "text"),GetSQLValueString("%" . $colname_rsRecherche . "%", "text"),GetSQLValueString($colauteur_rsRecherche, "text"),GetSQLValueString($colediteur_rsRecherche, "text"));
$rsRecherche = mysql_query($query_rsRecherche, $arilConn) or die(mysql_error());
$row_rsRecherche = mysql_fetch_assoc($rsRecherche);
$totalRows_rsRecherche = mysql_num_rows($rsRecherche);
 

Voila si quelqu'un peut m'aider??!!!
Merci.

#2 dcz.switcher

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 2532 messages

Posté 09 April 2012 - 17:52 PM

Salut et bienvenue sur mediabox,

Actuellement, que te retournes ta requête ?

Il semble pourtant que les critères auteur et éditeur soient pris en compte


WHERE s_livres.s_liv_titre LIKE %s
    OR s_editeurs.s_edit_nom LIKE %s
    OR s_auteur.s_aut_nom LIKE %s AND s_auteur.s_aut_nom=%s AND s_editeurs.s_edit_nom=%s
 

"Ce que l'on conçoit bien s'énonce clairement et les mots pour le dire arrivent aisément"

embryon de site

#3 asvns

    Ceinture Blanche

  • Members
  • Pip
  • 4 messages

Posté 09 April 2012 - 18:56 PM

ça ne donnes rien

#4 dcz.switcher

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 2532 messages

Posté 09 April 2012 - 19:04 PM

Citation

ça ne donnes rien

Tu veux dire que la requête ne retourne aucun résultat ?
"Ce que l'on conçoit bien s'énonce clairement et les mots pour le dire arrivent aisément"

embryon de site

#5 asvns

    Ceinture Blanche

  • Members
  • Pip
  • 4 messages

Posté 10 April 2012 - 22:19 PM

oui exactement

#6 dcz.switcher

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 2532 messages

Posté 11 April 2012 - 13:26 PM

Le script est dans un fichier à part ?

Si oui, en l'appelant directement ton navigateur, tu devrais pouvoir récupérer un résultat.

Ensuite, pour tester, tu peux remplacer $_POST par $_REQUEST ou $_GET et passer les arguments dans ton URL

exemple si ton script se nomme monscript.php, tu fais :

http://localhost/......php?search=TEST
"Ce que l'on conçoit bien s'énonce clairement et les mots pour le dire arrivent aisément"

embryon de site



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)