Foros del Web » Programando para Internet » PHP »

Ayuda para crear algoritmo o una forma mas facil de realizar esto

Estas en el tema de Ayuda para crear algoritmo o una forma mas facil de realizar esto en el foro de PHP en Foros del Web. Hola a todos y antes que nada gracias a quienes me han estado ayudando desde que empece a postear para pedir ayuda aqui. Ahora vengo ...
  #1 (permalink)  
Antiguo 10/09/2010, 18:34
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Ayuda para crear algoritmo o una forma mas facil de realizar esto

Hola a todos y antes que nada gracias a quienes me han estado ayudando desde que empece a postear para pedir ayuda aqui.

Ahora vengo pidiendo ayuda para generar un algoritmo lo mas simplificado posible (poco codigo), el asunto es el siguiente:

En la pagina que estoy desarrollando, es posible realizar la busqueda de imagenes a partir de ciertos filtros, es aqui donde tengo el problema. Es facil realizar consultas a partir de ciertos campos (los filtros) que llena el usuario pero aqui el detalle es que por ejemplo puede elegir buscar la/s imagen/es a partir de 1 campo que puede ser cualquiera de los 6 que son en total, puede elegir si nos vamos en orden, 2 campos, empezando por el campo 1,2 o 1,3 o 1,4, etc. Puede elegir tambien alereves, empezando por campos 6,5 o 6,4 etc. Lo mismo pasa si eligen 3 y creo hay mas combinaciones, la verdad nisiquiera se cuantas combinaciones serian y pues se me hace algo complicado estar poniendo cada combinaciona mano, ojala alguien sepa de un algoritmo que permita hacer esto mas facil. Aqui dejo un ejemplo de lo que estoy haciendo (a mano) a ver si les queda mas claro:

Código:
//opcion=0 cuando no se seleccionado ningun filtro
	if($arr[0]=="" || $arr[1]=="" || $arr[2]=="" || $arr[3]=="" || $arr[4]=="" || $arr[5]=="")
		$opcion=0;

	//opcion = 1-6 cuando seleccionan 1 filtro cualquiera
	if($arr[0]!="" || $arr[1]=="" || $arr[2]="" || $arr[3]=="" || $arr[4]=="" || $arr[5]=="")
		$opcion=1;
	if($arr[0]=="" || $arr[1]!="" || $arr[2]=="" || $arr[3]=="" || $arr[4]=="" || $arr[5]=="")
		$opcion=2;
	if($arr[0]=="" || $arr[1]=="" || $arr[2]!="" || $arr[3]=="" || $arr[4]=="" || $arr[5]=="")
		$opcion=3;
	if($arr[0]=="" || $arr[1]=="" || $arr[2]=="" || $arr[3]!="" || $arr[4]=="" || $arr[5]=="")
		$opcion=4;
	if($arr[0]=="" || $arr[1]=="" || $arr[2]=="" || $arr[3]=="" || $arr[4]!="" || $arr[5]=="")
		$opcion=5;
	if($arr[0]=="" || $arr[1]=="" || $arr[2]=="" || $arr[3]=="" || $arr[4]=="" || $arr[5]!="")
		$opcion=6;
	
	//opcion = cuando seleccionan 2 filtros cualesquiera
	if($arr[0]!="" || $arr[1]!="" || $arr[2]=="" || $arr[3]=="" || $arr[4]=="" || $arr[5]=="")
		$opcion=7;
	if($arr[0]!="" || $arr[1]=="" || $arr[2]!="" || $arr[3]=="" || $arr[4]=="" || $arr[5]=="")
		$opcion=8;	
	if($arr[0]!="" || $arr[1]=="" || $arr[2]=="" || $arr[3]!="" || $arr[4]=="" || $arr[5]=="")
		$opcion=9;
	if($arr[0]!="" || $arr[1]=="" || $arr[2]=="" || $arr[3]=="" || $arr[4]!="" || $arr[5]=="")
		$opcion=10;
	if($arr[0]!="" || $arr[1]=="" || $arr[2]=="" || $arr[3]!="" || $arr[4]=="" || $arr[5]!="")
		$opcion=11;
	if($arr[0]=="" || $arr[1]=="" || $arr[2]=="" || $arr[3]=="" || $arr[4]!="" || $arr[5]!="")
		$opcion=7;
	if($arr[0]=="" || $arr[1]=="" || $arr[2]=="" || $arr[3]!="" || $arr[4]=="" || $arr[5]!="")
		$opcion=8;	
	if($arr[0]=="" || $arr[1]=="" || $arr[2]!="" || $arr[3]=="" || $arr[4]=="" || $arr[5]!="")
		$opcion=9;
	if($arr[0]=="" || $arr[1]!="" || $arr[2]=="" || $arr[3]=="" || $arr[4]=="" || $arr[5]!="")
		$opcion=10;
	if($arr[0]!="" || $arr[1]=="" || $arr[2]=="" || $arr[3]=="" || $arr[4]=="" || $arr[5]!="")
		$opcion=11;
El valor que tenga opcion lo paso a una funcion que es la que se encarga de realizar la consulta dependiendo del valor de opcion, asi es como se me ha ocurrido hacer esto por el momento. Aun no lo termino por cierto.

arr contiene el arreglo con los 6 filtros, al principio tenia variables unidimensionales.

Gracias y disculpen si tal vez pregunto algo muy sencillo pero ahorita no se me "prende el foco".
  #2 (permalink)  
Antiguo 11/09/2010, 01:38
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Hola,

La pregunta clave creo que no está en cual es la solución a ese algoritmo, sino el objetivo, el resultado esperado, las combinaciones posibles son 128, 128 consultas diferentes; perdón pero, o está mal tu base de datos o la técnica de programación que estas usando es muy mala (por no decir otra cosa).

Pero, si realmente necesitas eso, normalmente se usan operaciones a nivel de bits para dividir las posibles combinaciones:

Código PHP:
$arr = Array('A''''C''''''''F');
$opcion 0x00;

$opcion |= empty($arr[0]) ? 0x01;
$opcion |= empty($arr[1]) ? 0x02;
$opcion |= empty($arr[2]) ? 0x04;
$opcion |= empty($arr[3]) ? 0x08;
$opcion |= empty($arr[4]) ? 0x10;
$opcion |= empty($arr[5]) ? 0x20;
$opcion |= empty($arr[6]) ? 0x40;

echo 
$opcion
Eso te genera un número diferente para cada combinación de campos vacíos, pero no en el orden que estas usando, sino lo genera a nivel de combinaciones binarias, por ejemplo:

Código:
   ARR0    ARR1    ARR2    ARR3    ARR4    ARR5    ARR6
     X                                                    = 1
             X                                            = 2
     X       X                                            = 3
                     X                                    = 4
     X               X                                    = 5
             X       X                                    = 6
etc... hasta 127
Saludos,

Última edición por HackmanC; 11/09/2010 a las 01:47 Razón: corrregir el 6 resultado de las combinaciones
  #3 (permalink)  
Antiguo 11/09/2010, 05:44
 
Fecha de Ingreso: agosto-2008
Mensajes: 606
Antigüedad: 16 años, 3 meses
Puntos: 11
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Haber que me quede claro. ¿lo que quieres es un array en la que los valores elegidos se identifiquen de los valores no elegidos para luego usar los elegidos como filtro a la consulta?
  #4 (permalink)  
Antiguo 12/09/2010, 17:17
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

hamckanc, no se si este mal hecha la base de datos ya que yo no la hice y aun no conozco el modelo e-r, tampoco se si yo este mal en lo que estoy haciendo. Ahorita todo lo hago a partir de lo que me piden.

En si lo que el sistema hace es lo siguiente.

Se cuenta con 6 campos a los cuales ellos les llaman filtros. Un usuario puede decidir buscar ya sea por 1 de esos filtros, por 2, 3, etc y esos 1,2,3..,6 filtros pueden ser cualquiera, de aqui el que sean muchas las posibles combinaciones de busqueda (que segun dice hack son 126). Normalmente a mi me pasaba que los sistemas utilizaban un solo campo para buscar o eran del tipo fechainicial-fechafinal por lo que no habia combinaciones, ahora que me toca hacer un sistema asi no se como empezar con eso ya que casi tengo todo (aun faltandome el mostrar las imagenes de la base de datos sin utilizar archivos y el conocer la base de datos real pero esta próximo eso).

Espero ahora entiendan mejor que es lo que necesito hacer, la verdad hacerlo como mencione es muy engorroso y hasta confuso ya que de repente ya no se en que combinacion voy o cual es y tengo que empezar casi de cero (de hecho aun no consigo hacerlo a mi manera).
  #5 (permalink)  
Antiguo 12/09/2010, 18:01
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Cita:
Iniciado por LOD_Fredy Ver Mensaje
... no se si este mal hecha la base de datos ...
Yo menos ... solo es una posibilidad, aunque yo puedo estar equivocado. Todavía no has dicho las especificaciones exactas, bases de datos, tipos de campos, etc.

Cita:
Iniciado por LOD_Fredy Ver Mensaje
... Se cuenta con 6 campos a los cuales ellos les llaman filtros. Un usuario puede decidir buscar ya sea por 1 de esos filtros, por 2, 3, etc y esos 1,2,3..,6 filtros pueden ser cualquiera, de aqui el que sean muchas las posibles combinaciones de busqueda (que segun dice hack son 126). ...
Ok, realmente son 128 combinaciones diferentes, es decir 2^N, siendo N = 7 en este caso te da exactamente 128. Yo puse 127 combinaciones en el ejemplo puesto que no estaba incluyendo el caso de que todos fueran 'empty', si hubiera incluido eso serían 128 como había indicado previamente.

El método para hacer esto está en varios posts aquí en este mismo foro, solo tienes que buscar un poco mas, pero normalmente se usa la concatenación de strings en función de los parámetros, por ejemplo:

Pseudo-código:
Código PHP:
SQLString "SELECT * FROM tabla WHERE ";
if (!empty(
$_POST['variable1'])) {
  
SQLString .= "dato1 = {$_POST['variable1']} AND ";
}
if (!empty(
$_POST['variable2'])) {
  
SQLString .= "dato2 = {$_POST['variable2']} AND";
}
....
SQLString SQLString - AND 
Esto genera un string, dependiendo si todos los valores fueron enviados:
'SELECT * FROM tabla WHERE dato1 = valor1 AND dato2 = valor2'
o solamente algunos:
'SELECT * FROM tabla WHERE dato2 = valor2'

Saludos,
  #6 (permalink)  
Antiguo 12/09/2010, 22:35
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Edito, creo que ya encontre la solucion aunque no utilizo exactamente lo que me dijiste como podras ver:

Código:
$variable1=isset($_post['var1'])?$_post['var1']:"";
$variable2=isset($_post['var2'])?$_post['var2']:"";
etc (lo pongo asi para hacerlo rapido)

$consulta="select [campos] from tabla where ";
if($variable1!="")
$consulta.="campo1 = $variable1 and";
if($variable2!="")
$consulta.="campo2 = $variable2 and";
.
.
.
$consulta=substr($consulta,0 ,strlen($consulta)-4);
El problema que tenia era quitar el ultimo "and ", como notaras lleva un " " que permite ir poniendo las condiciones de la consulta, de ahi elk que le reste los ultimo cuatro caracteres de la cadena formada.

Gracias y si tengo problemas con esto mismo aqui los posteo ya que aun no pruebo la consulta en si para ber que me devuelva lo que corresponde segun los filtros seleccionados.

Última edición por LOD_Fredy; 12/09/2010 a las 22:50
  #7 (permalink)  
Antiguo 12/09/2010, 23:30
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

hola
bueno, para evitar los n if que necesites hacer manualmente,
yo los haria dinámicos con un ciclo que vaya revisando
cada elemento del array post que llega

revisa esto

saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #8 (permalink)  
Antiguo 13/09/2010, 04:48
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Hola,

Cita:
Iniciado por LOD_Fredy Ver Mensaje
... creo que ya encontre la solucion aunque no utilizo exactamente lo que me dijiste ...
Exactamente, lo que escribí fue solamente pseudo-codigo. Ni siquiera lo probé (puesto que tendría que haber tenido mayor información), solamente era para que tuvieras una idea del método a utilizar, a veces se me olvida mencionarlo.

Hasta el momento no sé como se llaman los campos de la base de datos, si se llaman 'nombre', 'direccion', 'campoA', 'dato1', no te es útil un ciclo o te va a complicar la existencia por algo que puedes escribir en siete líneas, o hacer el ciclo que se repite siete veces si ese fuera el caso, formas de hacerlo hay muchas, pero ya tienes la idea. Las combinaciones son 2^7, pero al hacer la concatenación de String se produce automáticamente en aproximadamente 7 líneas usando el método correcto.

Saludos,

ps:

Aunque ... el método real que yo utilizo se resume en:

Pseudo-codigo:
Código PHP:
Ver original
  1. $param1 = isset($_POST['var1']) ? $_POST['var1'] : '';
  2. select [campos] from tabla
  3. where
  4.   ($param1 = '' or $param1 = campo1) and
  5.   ($param2 = '' or $param2 = campo2)

De nuevo, es solamente pseudo-codigo para que lo investigues más. Así no tengo que estar haciendo ciclos ni concatenando strings, pero al parecer no es del gusto del todo el mundo, ahora si usas stored procedures parametrizados es la única forma saludable de hacerlo.

Última edición por HackmanC; 13/09/2010 a las 05:22 Razón: poner este motivo de corrección porque agregue varias cosas :)
  #9 (permalink)  
Antiguo 13/09/2010, 08:50
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Gracias, por ahora dejare el codigo asi ya que esta funcionando pero aun sigo sin poder mostrar las imagenes usando el header. Al poner header("Content-type:image/jpg"); asi no ponga nada despues me manda la url de la pagina que la invoca en forma de imagen. Si pudiera solucionar esto tendria todo listo ya. Como hago para que no salga la url, por que se que si tengo cargada la imagen en el campo para mostrar ya que funciona con archivos pero como mencionaba en el otro post, genera muchos archivos ademas de tener que borrarlos cada que inicien el explorador y ademas, crear tantos archivos como usuarios utilicen la pagina. Se que esto esta fuera de este tema pero ojala uds sepan como solucionarlo.

Sobre lo de generar dinamicamente los if lo veo despues, la verdad no tengo mucho tiempo para terminar el proyecto y aun me falta algo de documentacion (he documentado todo lo que he podido)

No menciono mas informacion por que es informacion de la empresa en que trabajo, les pido disculpas por eso.
  #10 (permalink)  
Antiguo 13/09/2010, 14:30
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Hola,

Cita:
Iniciado por LOD_Fredy Ver Mensaje
... sin poder mostrar las imagenes usando el header. Al poner header("Content-type:image/jpg"); asi no ponga nada despues me manda la url de la pagina que la invoca en forma de imagen. Si pudiera solucionar esto tendria todo listo ya. Como hago para que no salga la url, por que se que si tengo cargada la imagen en el campo para mostrar ya que funciona con archivos pero como mencionaba en el otro post, genera muchos archivos ademas de tener que borrarlos cada que inicien el explorador y ademas, crear tantos archivos como usuarios utilicen la pagina ...
Realmente yo no entendí, "la url de la pagina que la invoca en forma de imagen", "crear tantos archivos como usuarios utilicen la pagina", es lo mas confuso que haya leído últimamente, posiblemente alguien más haya comprendido mejor.

Cita:
Iniciado por LOD_Fredy Ver Mensaje
... No menciono mas informacion por que es informacion de la empresa en que trabajo, les pido disculpas por eso.
No importa pero por lo menos deberías haber mencionado el tipo de campos, la forma en que despliegas la información, y mostrar los documentos PHP cambiando la información personal por cualquier otra cosa, etc.

Si te das cuenta primero fuimos al extremo opuesto de lo que querías hacer, hablando de combinaciones binarias y otras cosas que si bien estaban lejanamente relacionadas al problema se hubiera resulto mucho mas rápido si hubieras puesto mayor información, cambiando los detalles confidenciales.

Espero haber sido de alguna ayuda,
Saludos,
  #11 (permalink)  
Antiguo 13/09/2010, 15:31
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Gracias a ti y a aquellos que me han ayudado en este y otros post, sin uds no sabria lo que se ahora y no hubiera podido hacer muchas cosas que en su momento eran necesarias hacer.

Sobre lo que pusiste en letra cursiva:

El tipo de dato que contiene la imagen en la base de datos es un blob, el detalle es que estoy trabajando con oracle y no mysql.

Bueno, esta es la linea de codigo donde le paso la imagen a la variable

$result = $arr['BIN']->load();

luego la quiero mostrar con el siguiente codigo.

header("Content-type:image/jpg");
echo $result;

Me devuelve lo siguiente una vez corro el script:

http://127.0.0.1/MODELO/busqueda.php

Esa url no me la devuelve como texto en la pagina sino como si la url fuera una imagen (se esto por que al dar clic derecho en la url, me aparecen las opciones, ver imagen, copiar ruta de imagen.

He de decir que en $result = $arr['BIN']->load(); se se carga la imagen ya que si utilizo archivos funciona, por si no entienden eso tambien dejo el codigo que si me esta funcionando para mostrar aunque genere archivos fisicos:


$i=0;

fs=fopen("ARCHIVO".$i.".jpg", "wb"); //creo el archivo
fwrite($fs, $result); //le pongo la imagen
fclose($fs);

echo "<a href='ARCHIVO".$i.".jpg' target='blank'><IMG src=ARCHIVO".$i.".jpg></a>"

Eso va dentro del oci_fecth_assoc que va leyendo cada registro que contenga la consulta realizada.

En el proximo post pongo el codigo completo cambiando el nombre de los campos para que vean casi todo el codigo o al menos el codigo que tengo en el archivo buscar.php
  #12 (permalink)  
Antiguo 13/09/2010, 15:43
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Este es el codigo de la parte que muestra las imagenes junto con otros datos:

Código PHP:
$i=0;
$cont=0;
echo 
"<table align='center'>";    
        while(
$arr oci_fetch_assoc($Q))
        {
            
$result $arr['BIN']->load();
            
$dato1=$arr['dato1'];
            
$dato2=$arr['dato2'];
            
$dato3=$arr['dato3'];
            
$dato4=$arr['dato4'];
            
$dato5=$arr['dato5'];
            
$dato6=$arr['dato6'];
            
$fs=fopen("ARCHIVO".$i.".jpg""wb"); //creo el archivo
                
fwrite($fs$result); //le pongo la imagen
                
fclose($fs);
                if(
$cont==0)
                    echo 
"<tr>";
                echo 
"<td>".
                
"<a href='ARCHIVO".$i.".jpg' target='blank'><IMG src=ARCHIVO".$i.".jpg></a></td><td><b>"$dato1."</br>"$dato2."</br>".$dato1."</br>"$dato3"</br>".$dato4."</br>".$dato5."</b>";
                
/*header("Content-type:image/jpg");
                echo $result;*/
                
echo "</td>";
                if(
$cont==1)
                {
                    echo 
"</tr>";
                    
$cont=0;
                }
                else
                    
$cont++;
                
$i++;
                
$noor++;                
        }        
        
$_SESSION['noi']=$i;
    if(
$noor==0)
        echo 
"<h1>No se encuentra</h1>";
    
oci_free_statement($Q); 
De aqui lo que importa es la parte de los archivos y lo que esta comentado que es lo del header.
  #13 (permalink)  
Antiguo 13/09/2010, 18:54
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Hola,

Lo unico que tienes que hacer es separar la lógica en dos archivos diferentes, puesto que generan contenido diferente,

pseudo-codigo (imagen.php):
Código PHP:
header("Content-Type: image/jpg");

consulta a la base de datos usando los par&#225;metros $_GET[]
select where id $_GET['id']...
si la tabla no tiene PrimaryKey tendr&#225;s que buscar otro método

...
$result $arr['BIN']->load();
echo 
$result
La forma de llamar el archivo que genera la imagen.

pseudo-codigo (otro.php):
Código PHP:
...
$link 'imagen.php?id=' $arr['ID']; // ID - PrimaryKey
<a href='$link' target='blank'><IMG src='$link'></a>
... 
Saludos,
  #14 (permalink)  
Antiguo 13/09/2010, 22:00
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

jajaja, lo sabia, era algo sencillo aunque no lo entiendo del todo, me gustaria me explicaras los dos ultimos codigos por favor y ya no te molesto mas por ahora XD.

Muchas gracias por que ahora si, solo falta que ellos me pasen el modelo e-r de la base de datos para empezar a crear las consultas reales.
  #15 (permalink)  
Antiguo 14/09/2010, 15:01
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Hola,

Cita:
Iniciado por LOD_Fredy Ver Mensaje
... me gustaria me explicaras los dos ultimos codigos por favor ...
Tienes que dividir el código en dos partes, yo solamente copie lo que tenías ya hecho y cambié ciertos detalles para que fuera mas claro. No entiendo muy bien que parte tendría que explicar porque la mayoría es lo que ya tenías hecho, y solo agregue unos comentarios donde tendrías que hacer una nueva consulta a la base de datos.

Básicamente, tienes que crear un documento PHP nuevo que tenga nombre 'imagen.php', este debe recibir un parámetro por el método GET con el ID (la llave o identificador que normalmente es la Primary Key), el procedimiento debe de buscar la imagen en la base de datos y devolverla con el encabezado imagen/jpeg. Está demás indicar que debes chequear que el ID sea numérico, que exista el registro en la base de datos, etc.

En el otro documento en lugar de llamar a una imagen directamente, tienes que llamar al archivo anterior, es decir, que no colocas "foto.jpg" en el vínculo sino "imagen.php?id=25", siendo 25 la llave primaria del registro donde está almacenada la foto en el campo binario en Oracle. Por ejemplo:
Código PHP:
Ver original
  1. http://www.demo.com/imagen.php?id=25
Si ese documento PHP genera una imagen puedes indicarla en el URL de la imagen.
Código HTML:
Ver original
  1. <img src="http://www.demo.com/imagen.php?id=25"....>

Saludos,
  #16 (permalink)  
Antiguo 15/09/2010, 00:09
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Ayuda para crear algoritmo o una forma mas facil de realizar esto

Si entiendo casi todo menos el por que se tiene que guardar lo que devuelve la cabecera en una variable y esa variable mostrarla con una etiqueta <a> o <img>. Supongo que lo que genera la cabecera no es leible directamente (enviando un echo nada mas como lo hacia yo), sino que ese valor requiere de la etiqueda <img> para que ahora si, salga la imagen y pues en pocas palabras eso era lo que me faltaba pero que solo tu pusiste (de los tantos lados donde busque una respuesta).

Gracias de nuevo.

Etiquetas: facil, mas, realizar, algoritmos, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:37.