Foros del Web » Programando para Internet » PHP »

Me echáis una mano con este código?

Estas en el tema de Me echáis una mano con este código? en el foro de PHP en Foros del Web. Hola, hasta ahora tenía funcionando perfectamente un código entre dos páginas y de repente dejó de funcionar. En el hosting me dicen que ellos lo ...
  #1 (permalink)  
Antiguo 13/05/2008, 23:34
mon
 
Fecha de Ingreso: febrero-2003
Mensajes: 506
Antigüedad: 21 años, 2 meses
Puntos: 0
Me echáis una mano con este código?

Hola, hasta ahora tenía funcionando perfectamente un código entre dos páginas y de repente dejó de funcionar. En el hosting me dicen que ellos lo único que cambiaron fué la versión de MySql4 a la MySql5. Entonces quería a ver si me podéis echar una mano donde tengo el error ya que me dá un error de no se pudo ejecutar la consulta.

Tengo un apartado en el que muestro una relación de articulos y que ven una foto y un encabezado de un texto, el apartado lo llamarémos articulos.php. Haciendo la consulta a la BD obtengo estos datos mas el ID de ese articulo. Después através de un enlace doy la opción de ver más datos de ese articulo en otra página, llamemosla masinfo.php, y lo que necesito es pasar el ID del que han elegido a esa otra página. lo hago de la siguiente forma

articulo.php
Código PHP:
$_pagi_sql="SELECT * FROM pisos_venta WHERE id_tipo_inmueble='1' AND venta='1' ORDER BY fecha DESC, id DESC "; 
//cantidad de resultados por página (opcional, por defecto 20)
$_pagi_cuantos = 6;
//cantidad de enlaces que se mostrarán como máximo en la barra de navegación
$_pagi_nav_num_enlaces = 5;//
$_pagi_mostrar_errores = false;//
$_pagi_conteo_alternativo = true;//
//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php");

//$result=mysql_query($sql) or die (mysql_error());



# CREAMOS UNA CABECERA DE UNA TABLA (codigo HTML) 

echo "<table width=480 align=center cellspacing=1 cellpadding=3 border=1 bordercolor=#003366>"; 
//echo "<tr>";
while($registro = mysql_fetch_array($_pagi_result)){
           echo "<td valign=top>Ref. ".$registro['referencia']."</td>";
           $fecha=$registro['fecha'];
           $var = explode('-',$fecha);
           echo "<td><div align=right>".$var[2]."-".$var[1]."-".$var[0]."</div></td></tr></td></tr>";
           echo "<td>";
           echo "<td valign=top>";
?>           
      </td>
  </tr>
  <tr>
    <td width="22%" rowspan="2" valign="top" align="center"><a href="masinfo.php?iden=<? echo $registro['id']; ?>" onClick='this.target = "popup"; window.open("", "popup", "tolbar=0,width=650,height=520, resizable=yes")' ><img src="mini.php?imagen=<? echo $registro['imagen1']?>&tam=55x55" border="0" /></a></td>
    <td width="78%"><? echo "".substr($registro["descripcion"],0,135)."......"?></td>
  </tr>
  <tr>
    <td><div align="right"><a href="masinfo.php?iden=<? echo $registro['id']; ?>" onClick='this.target = "popup"; window.open("", "popup", "tolbar=0,width=650,height=520, resizable=yes  scrollbars=no ")' >más información</a></div></td>
  </tr>
Falta alguna cosa, pero es por no poner todo el código de la página,pero lo que necesito que veais esta puesto, es en la línea
Código HTML:
<td><div align="right"><a href="masinfo.php?iden=<? echo $registro['id']; ?>" onClick='this.target = "popup"; window.open("", "popup", "tolbar=0,width=650,height=520, resizable=yes  scrollbars=no ")' >más información</a></div></td> 
  </tr> 
que es donde envío le valor de id. Sé que funciona, lo primero porque hasta ahora así lo estába haciendo y nadie cambió nada escepto lo de MySql y porque al realizar click sobre el enlace en la web se vé que está dándolo bién y que muestra el id, osea que lo que entiendo es que no hago bién la recepción de la variable id.
La página que recibe el link es
masinfo.php
Código PHP:
<?

include("includes/conectobd.php");

if (
$iden!=""

    
$sql "SELECT * FROM pisos_venta WHERE id=$iden" 
    echo 
$iden ;


$consulta mysql_query($sql) or die ("No se pudo ejecutar ESTA consulta"); 
$registro=mysql_fetch_assoc($consulta); 
echo 
"<table width=630 bgcolor=#A6D9FF align=center border=0 id=tabla>";  //TABLA PRINCIPAL DE REF. FECH DESCR. Y FOTOS
 
$a=explode("/"$registro['imagen1']); 
for(
$i=4;$i<(count($a));$i++) $foto1.=($i<((count($a))-1)) ? ($a[$i]."/") : ($a[$i]); 

$a2=explode("/"$registro['imagen2']); 
for(
$i=4;$i<(count($a2));$i++) $foto2.=($i<((count($a2))-1)) ? ($a2[$i]."/") : ($a2[$i]);

$a3=explode("/"$registro['imagen3']); 
for(
$i=4;$i<(count($a3));$i++) $foto3.=($i<((count($a3))-1)) ? ($a3[$i]."/") : ($a3[$i]);

$a4=explode("/"$registro['imagen4']); 
for(
$i=4;$i<(count($a4));$i++) $foto4.=($i<((count($a4))-1)) ? ($a4[$i]."/") : ($a4[$i]);
  
?>
   
<script language="JavaScript">
var photos=new Array()
var which=0


photos[0]="<? echo $foto1?>"
photos[1]="<? echo $foto2?>"
photos[2]="<? echo $foto3?>"
photos[3]="<? echo $foto4?>"



function backward(){
if (which>0){
window.status=''
which--
document.images.inmobiliaria.src=photos[which]
}
}

function forward(){
if (which<photos.length-1){
which++
document.images.inmobiliaria.src=photos[which]
}
else window.status='End of gallery'
}
</script>

<input type="hidden" name="id" value="<? echo $registro['id'];?>"> 

<input type="hidden" name="referencia" value="<? echo $registro['referencia'];?>"> 

<?   
           
        $fecha
=$registro['fecha'];
           
$var explode('-',$fecha);
        
"".$var[2]."-".$var[1]."-".$var[0]."";
        
?>
                   <input type="hidden" name="fecha" value="<? echo" ".$var[2]."-".$var[1]."-".$var[0].""?>"> 
       <?       
                
    
echo "<td><table width=640 border=0 bordercolor=#00ff00>";
    echo 
"<td valign=top width=300>Ref.".$registro['referencia']."<br><br>";
    
$texto=nl2br($registro["descripcion"]);
    echo
"".$texto."</td>";
?>    

     <td align="right" widht="100%"><img src="<? echo $foto1?>" name="inmobiliaria"> </td>
    
<?     
     
echo"</tr>";
     echo 
"</table>";
     echo 
"</td>";
     echo 
"</tr>";
    echo 
"<tr>";
    
       
?>

       <?
       
    
echo "<td><table>";     
  
?>    
   <td><a href="javascript:changeImage('<? echo $foto1?>')"><img src="mini.php?imagen=<? echo $foto1?>&tam=55x55" border="0" /></a></td>
   <td> <a href="javascript:changeImage('<? echo $foto2?>')"><img src="mini.php?imagen=<? echo $registro['imagen2']; ?>&tam=55x55" border="0"/></a></td> 
    <td><a href="javascript:changeImage('<? echo $foto3?>')"><img src="mini.php?imagen=<? echo $registro['imagen3']; ?>&tam=55x55" border="0"/></a></td>
    <td><a href="javascript:changeImage('<? echo $foto4?>')"><img src="mini.php?imagen=<? echo $registro['imagen4']; ?>&tam=55x55" border="0"/></a></td>
  <td width="300" align="right"><input name="B1" type="button" class="botones"  onclick="this.form.submit()" value="Me Interesa" /></td>
   </form>
  <tr><table>
  <div align="center"><center><p>

<td>
<input type="button" value="<<<" name="B2" class="botones"
onClick="backward()"> <input type="button" value=">>>" name="B1"
onClick="forward()" class="botones"><br>
</center></div>
<tr><td></td></tr>
</td>
 </table>
</table> </tr>
</body>
</html>
El ejemplo lo podeis ver AQUÍSi pinchais en mas información o en la foto, que por cierto tampoco me funciona, vais a otra página y te da el error de que no se pudo ejecutar la consulta. Pero si os fijais arriba e n la barra pone la ruta bién y con el nº del id, osea que vuelvo a decir que creo que lo que estoy haciendo mal es el envío o la recepción de la variable iden.
A ver si alguien me puede orientar un poco.
Ya plantee parte de la consulta en el apartado de bases de datos, pero creo que la plantee mal haciendo referencia a una consulta sobre php, por eso puede que esté mejor la consulta aquí.
Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 14/05/2008, 08:37
mon
 
Fecha de Ingreso: febrero-2003
Mensajes: 506
Antigüedad: 21 años, 2 meses
Puntos: 0
Re: Me echáis una mano con este código?

Bueno, conseguí algo. Ahora de momento la variable ya la pillo.
Cambié $iden!=""; por, creo una variable con otro nombre, por ejemplo $valor y digo que, $_GET['iden']; y así si la coje.

Gracias de todos modos. En breve estaré por aquí otra vez, porque tengo más problemillas.
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 09:03.