Google
Web dns.bdat.net

Re: [PHP-ES] Problemas con la busqueda

From: Rolan Benavent ( rolan(EN)ya.com)
Date: Tue Aug 17 2004 - 12:55:08 CEST


Por casualidad, aqui...

> $answ = mysql_query("SELECT * FROM prods WHERE type LIKE
'%'.$_POST[$elem].'%'") or die (mysql_error());

... no te sobrarán las comillas que has puesto dentro del Like, o mejor
dicho, no querrias poner comillas dobles para concatenar con la variable
$_POST????
Es decir, que debe ir:
        .... WHERE type LIKE '%".$_POST[$elem]."%'") or die (mysql_error());

porque lo que tu pones, si $elem="pepito" por ejemplo, es:
            ... WHERE type LIKE '%'pepito'%'

        Rolan.

----- Original Message -----
From: "Sancerni Veronica" < sancerni_veronica(EN)yahoo.fr>
To: "php-es" < php-es(EN)lists.php.net>
Sent: Tuesday, August 17, 2004 9:19 AM
Subject: [PHP-ES] Problemas con la busqueda

> Consigo que php me imprima los campos enum de la tabla prods, y
chapuceandolo un poco incluso los divido e imprimo en dos tablas:
>
> <table width="99%" height="324" border="1" align="center" cellpadding="5"
cellspacing="2" bordercolor="#FF33CC" bgcolor="#FFFFFF">
> <tr valign="top">
> <td width="45%" height="150">
> <?php
> $table= "prods";
> $describe=mysql_query("describe $table");
> while ($ligne=mysql_fetch_array($describe)){
> extract($ligne);
> if (substr($Type,0,4)=='enum'){
> $liste=substr($Type,5,strlen($Type));
> $liste=substr($liste,0,(strlen($liste)-2));
> $enums=explode(',',$liste);
> $v1 = "<font color='#CA0000'><strong>BY TYPE:</strong><br>";
> $v2 = "</td><td width='55%' height='150'><font
color='#800080'><strong>BY MEASURES*:</strong><br>";
> switch($liste){
> case "'model1','model2','model3'":
> echo $v1;
> break;
> case "'3.1x3.6x2.65m','4.1x4.55x3.1m','4.85x6.4x3.5m'":
> echo $v2;
> break;
> }
> if (sizeof($enums)>0){
> echo "<form name='enum' method='post' action='enzelf.php'>\n";
> for ($i=0; $i<sizeof($enums);$i++){
> $elem=strtr($enums[$i],"'"," ");
> echo "<input type='checkbox' name='enum'
value='".$elem."'>".$elem."\n<br>";
> }
> echo "<br>","<input name='submit' type='submit' value='submit'>";
> echo "</form>";
> }
> }
> }
> ?>
> <p align="left"><font size="-1">* Remarks</font></p>
> </td>
> </tr>
> </table>
>
> El problema viene cuando intento que "enzelf.php" rule y me muestre los
demas campos de la tabla prods relacionados a lo que el cliente busca como
'nombre','ref','picture',etc. Si estoy segura de poder imprimirlos todos en
tablas como ya hago en la pagina principal, como hago que el select me
muestre lo que quiero y no campos vacios?
> "enzelf.php"...
> $answ = mysql_query("SELECT * FROM prods WHERE type LIKE
'%'.$_POST[$elem].'%'") or die (mysql_error());
> if(mysql_num_rows($answ) == "0") {
> echo "<b><strong>No matching results!!!</strong><br>Our apologies the
model you were searching for is not available at the moment";
> } else {
> echo ('<table width=100% border=1 align=center cellspacing=0 cellpadding=5
bordercolor=#0000FF>');
> while($isql = mysql_fetch_array($answ))
> {
> echo("
> <tr>
> <td width='20%'><img src=$isql->pix><br>$isql[Type]
> $isql->Name<br>REF#$isql->Ref,<br><strong>SERIAL N°:
$isql->Serial</strong><br>DETAILS: $isql->Description</td>
> </tr>
> ");
> }
> echo "<b>Remarks</b>";
> }
> }
> echo ('</table>');
>
>
> ---------------------------------
> Créez gratuitement votre Yahoo! Mail avec 100 Mo de stockage !
> Créez votre Yahoo! Mail
>
> Le nouveau Yahoo! Messenger est arrivé ! Découvrez toutes les nouveautés
pour dialoguer instantanément avec vos amis.Téléchargez GRATUITEMENT ici !

-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


This archive was generated by hypermail 2.1.7 : Tue Sep 21 2004 - 21:34:43 CEST