Comunidad de diseño web y desarrollo en internet online

Resultado de busqueda

Citar            
MensajeEscrito el 03 Ago 2007 10:18 am
Hola de nuevo a todos. Tengo el siguiente codigo para mostrar los resultados de una busqueda, el caso es que en dreamweaver me da error al seleccionar el juego de registros pero funciona cuando lo publico. Me gustaría arreglar el juego de registros para poder coger el id del articulo como link.
Bueno a ver si alguien detecta el error, el codigo:

Código :

SELECT *
FROM datos_coches, lista_marcas
WHERE (datos_coches.modelo LIKE %colname% OR lista_marcas.marc LIKE %colname2% OR datos_coches.combustible LIKE %colname3%)  AND datos_coches.marca = lista_marcas.id_marca

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Ago 2007 10:35 am
hola, me puedes poner todo el codigo php que te genera dreamweaver? me facilitaria muxo a la hora de darte una respuesta ;)

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 03 Ago 2007 11:07 am
bueno, como no tengo tiempo para contestarte mas tarde aqui te dejo el codigo que yo utilizaria:
mysql_select_db($database_con1, $con1);

Código :

$query_cohes = "SELECT * FROM datos_coches, lista_marcas WHERE (datos_coches.modelo LIKE %colname% OR lista_marcas.marc LIKE %colname2% OR datos_coches.combustible LIKE %colname3%)  AND datos_coches.marca = lista_marcas.id_marca";
$cohes = mysql_query($query_cohes, $con1) or die(mysql_error());
$row_cohes = mysql_fetch_assoc($cohes);
$totalRows_cohes = mysql_num_rows($cohes);

con lo cual, la id seria

Código :

$row_cohes['datos_cohes.id']

(aora no se si es $row_cohes['datos_cohes.id'] o $row_cohes['datos_cohes_id'] ... xD )
aunque las consultas de varias tablas en sql dan muxos errores

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 03 Ago 2007 02:09 pm

Loky escribió:

...aunque las consultas de varias tablas en sql dan muxos errores

Eso NO es cierto.

Por Darel

725 de clabLevel

5 tutoriales

 

I'm a human

firefox
Citar            
MensajeEscrito el 04 Ago 2007 01:52 pm
pues dime como lo haces porque ami la mitad de las que hago me dan errores xD
yo ablo desde las experiencias que he tenido, claro que no a todo el mundo le tienen porque salir mal ;)

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 06 Ago 2007 08:10 am
Sigue sin funcionarme, tengo esto:

Código :

SELECT *
FROM datos_coches, lista_marcas
WHERE (datos_coches.marca LIKE %colname% OR datos_coches.modelo LIKE %colname2% OR datos_coches.combustible LIKE %colname3%) AND datos_coches.marca = lista_marcas.id_marca


que me busca bien pero no puedo abrir el juego de registros.

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Ago 2007 02:05 pm
colname es una variable PHP???

Si es asi te falta poner el $ delante de ella

Saludos

Por 3w

145 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 06 Ago 2007 02:43 pm
"colname" es una variable de la funcion sprintf() , solo que (supongo) se ha aorrado todo eso y ha puesto solo la consulta sql
la variable sprintf() se usa asi:
sprintf("SELECT * FROM tabla WHERE condicion = '%s'", $colname);
si september me pusiera todo el codigo ( como le dije ya en un mensaje anterior... ) le podria poner el codigo entero paa que slo tubiera que copiar y pegar

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 06 Ago 2007 03:18 pm
mas facil seria poner algo asi.. creo...


$sql = "SELECT * FROM tabla WHERE condicion = '".$colname."'";
$r = mysql_query($sql)



Saludos

Por 3w

145 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 06 Ago 2007 06:34 pm

Darel escribió:

Loky escribió:

...aunque las consultas de varias tablas en sql dan muxos errores

Eso NO es cierto.


Exacto, no dan errores, lo peor que puede pasar es que se alenten el servidor, procesando el query. Pero vamos por ejemplo yo tengo SELECT que anida unas 20 tablas, y leen sobre unos 200,000 registros y la velocidad es bastante buena.
Loky lo que te puede recomendar es aprender SQL, documentate lo mas que puedas y ten pasciencia, yo tengo años haciendo queries, cuando inicie no sabía lo poco que sé ahora.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 07 Ago 2007 06:13 am
ai la cuestion es que yo se sql, pero aprendi con oracle y acces, y lo veo un poco diferente a la hora deescribir la consulta ( comillas y cosas asi ...) y eso es lo que me falta :(

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 08 Ago 2007 07:28 am
Ante todo muchas gracias por el interes y perdon por no responder ayer pero no pude.El codigo completo es este:

Código :

<?php require_once('Connections/inexcar.php'); ?>
<?php require_once('includes/ultimos_registro.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $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;
}
}

$maxRows_busqueda = 20;
$pageNum_busqueda = 0;
if (isset($_GET['pageNum_busqueda'])) {
  $pageNum_busqueda = $_GET['pageNum_busqueda'];
}
$startRow_busqueda = $pageNum_busqueda * $maxRows_busqueda;

$colname_busqueda = "-1";
if (isset($_GET['busqueda'])) {
  $colname_busqueda = (get_magic_quotes_gpc()) ? $_GET['busqueda'] : addslashes($_GET['busqueda']);
}
$colname2_busqueda = "-1";
if (isset($_GET['busqueda'])) {
  $colname2_busqueda = (get_magic_quotes_gpc()) ? $_GET['busqueda'] : addslashes($_GET['busqueda']);
}
$colname3_busqueda = "-1";
if (isset($_GET['busqueda'])) {
  $colname3_busqueda = (get_magic_quotes_gpc()) ? $_GET['busqueda'] : addslashes($_GET['busqueda']);
}
mysql_select_db($database_inexcar, $inexcar);
$query_busqueda = sprintf("SELECT * FROM datos_coches, lista_marcas WHERE (datos_coches.marca LIKE CONCAT('%%', %s, '%%') OR datos_coches.modelo LIKE CONCAT('%%', %s, '%%') OR datos_coches.combustible LIKE CONCAT('%%', %s, '%%')) AND datos_coches.marca = lista_marcas.id_marca", GetSQLValueString($colname_busqueda, "text"),GetSQLValueString($colname2_busqueda, "text"),GetSQLValueString($colname3_busqueda, "text"));
$query_limit_busqueda = sprintf("%s LIMIT %d, %d", $query_busqueda, $startRow_busqueda, $maxRows_busqueda);
$busqueda = mysql_query($query_limit_busqueda, $inexcar) or die(mysql_error());
$row_busqueda = mysql_fetch_assoc($busqueda);

if (isset($_GET['totalRows_busqueda'])) {
  $totalRows_busqueda = $_GET['totalRows_busqueda'];
} else {
  $all_busqueda = mysql_query($query_busqueda);
  $totalRows_busqueda = mysql_num_rows($all_busqueda);
}
$totalPages_busqueda = ceil($totalRows_busqueda/$maxRows_busqueda)-1;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<link href="estilo.css" rel="stylesheet" type="text/css" />
<script src="../Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
</head>

<body>
<div id="total">
  <div id="identidad">
    <div id="logo"></div>
    <div id="buscador">
      <?php require_once('includes/buscar.php'); ?>
</div>
  </div>
  <div id="flash">
    <script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0','width','650','height','210','title','imagenes_movimiento','src','MAT/flash','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','MAT/flash' ); //end AC code
</script>
    <noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="650" height="210" title="imagenes_movimiento">
      <param name="movie" value="MAT/flash.swf" />
      <param name="quality" value="high" />
      <embed src="MAT/flash.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="650" height="210"></embed>
    </object></noscript>
  </div>
  
  <div id="marca">
    <?php require_once('includes/marca.php'); ?>
</div>
  <div id="navegacion">
    <ul>
      <li><a href="#" class="actual">NOSOTROS</a></li>
<li><a href="importacion.php">IMPORTACI&Oacute;N</a></li>
<li><a href="nacional.php">NACIONAL</a></li>
<li><a href="contacto.php">CONTACTO</a></li>
</ul>
  </div>
  <div id="columnas">
    <div id="c_izq">
      <h2>ULTIMAS ENTRADAS </h2>
      <p>&nbsp;</p>
      <p>
      </p>
        <?php require_once('includes/ultimos_disenyo.php'); ?>
    </div>
    <div id="c_dcha">
      <h1>NOSOTROS - Filosof&iacute;a </h1>
      <p>Se han encontrado <?= $totalRows_busqueda ?> veh&iacute;culos:</p>
      <p>&nbsp;</p>
      <?php do { ?>
        <p><a href="datos_coches.php?id_coche=$row_busqueda['id_coche']"><?php echo $row_busqueda['marc']; ?> <?php echo $row_busqueda['modelo']; ?></a></p>
        <?php } while ($row_busqueda = mysql_fetch_assoc($busqueda)); ?></div>
  </div>
 <div id="borrar"></div>
 
 <div id="pie">INEXCAR 2007   &copy; </div>
</div>
</body>
</html>
<?php
mysql_free_result($busqueda);
?>

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2007 08:58 am

Código :

<a href="datos_coches.php?id_coche= $row_busqueda['id_coche']" >

eso se te ha colado? o esta hay el error? yo nunca lo e visto asi, mas que nada porque es una variable de php...

Código :

<a href="datos_coches.php?id_coche=<?php echo $row_busqueda['id_coche']"; ?> >

mejor asi no? :)
por lo demas lo veo bien,
te muestra algo $row_busqueda['marc']; y echo $row_busqueda['modelo']; ??
si no te muestra nada avisa i me revisare mejor el codigo ;)

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 08 Ago 2007 09:14 am
Pues no me funciona tampoco, realmente no creo que este en el link el problema ya que no me muestra nada si busco por marca (que es donde cruzo las tablas) si busco por modelo o por combustible si me encuentra.

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2007 09:41 am
no se si dara error siempre o no pero yo pondria el " datos_coches.marca = lista_marcas.id_marca " en el WHERE i no en un AND, i el resto de opciones en los AND...
aun asi, so no sale bien, revisa el formato de las celdas en el sql, es decir, que los dos sean iguales, por ejemplo los dos timpo INT 4, o varchar 10... lo que mejor te sea pero iguales, avezes pasa que un descuido simple te arruina todo...
si no es eso, no se que mas decirte por el momento :(

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 08 Ago 2007 09:48 am
Pues sigue sin funcionar :( pero gracias de todas formas. El datos_coches.marca = lista_marcas.id_marca lo utilizo para que en vez de mostrar un int me muestre una cadena de caracteres (lista_marcas.marc) , no se si habrá que comparar la busqueda a lista_marcas.marc...que lioooo

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2007 09:54 am
yo ize todo lo qe pude, espereos que algun iluminado nos asombre con su saviduria y nos aga ver la solucion

saludos

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 08 Ago 2007 09:58 am
Bueno parece que esa era la clave, comparar con la cadena de caracteres de la otra tabla, ya me busca correctamente asi. Aunque en el juego de registros me pone:

Código :

 MySQL Error#: 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2% OR datos_coches.combustible LIKE '%-1'3%) and datos_coches.marca = lista_marc' at line 1 


me funciona,hay algún problema en que me salga ese mensaje?

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2007 10:04 am
eso te lo dice dreamweaver verda? si es asi, tranquilo, dreamweaver se lia a dar errores en sql con que le pongas 1 cosilla 1 pelin complicada... con tu consulta tiene que flipar en colores el dreamweaver jajaja

Por Loky

85 de clabLevel



Genero:Masculino  

aplicaciones web personalizadas

firefox
Citar            
MensajeEscrito el 08 Ago 2007 10:10 am
Si asi es me lo pone dreamweaver, no recordaba eso, mi profesor tambien me dijo que al dreamweaver se le iba en cuanto le ponias algo mas complicado de la cuenta.
Gracias por todo loky tus comentarios me han sido de gran ayuda.
Volvere pronto ya que tengo que realizar el gestor de contenidos de esta web y fijo me dara problemas jejeje, pero poco a poco le voy cogiendo el rollo.

Por september

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2007 01:08 pm
Pues si que es limpio el codigo generado por Dreamweaver si :lol:

Por ChickenExecutor

351 de clabLevel

2 tutoriales
1 articulo

 

El pais de la Resistance

mozilla

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.