Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Joomla »

Problema con Componente + Base de Datos

Estas en el tema de Problema con Componente + Base de Datos en el foro de Joomla en Foros del Web. Hola, he creado un componente en forma de diccionario (lo podeis ver aquí) Como es muy amplio el glosario de palabras, me han pedido que ...
  #1 (permalink)  
Antiguo 04/10/2010, 09:00
 
Fecha de Ingreso: enero-2008
Mensajes: 1
Antigüedad: 16 años, 10 meses
Puntos: 0
Problema con Componente + Base de Datos

Hola, he creado un componente en forma de diccionario (lo podeis ver aquí) Como es muy amplio el glosario de palabras, me han pedido que dentro del apartado se puedan visualizar también las "últimas palabras" introducidas; para ello he creado un enlace a la base de datos diciéndole que muestre las 10 últimas palabras
Código PHP:
mysql_query("SELECT id,palabra,definicion FROM en_diccionario ORDER BY id DESC LIMIT 10"
El problema es que la función funciona perfectamente de forma independiente (link) mostrando las últimas 10 palabras, sin embargo, cuando lo introduzco en el componente parace que deja de acceder a la base de datos...
os adjunto el código completo para que le echeis un vistazo
Código PHP:
<?php 
include("configfen.php"); 
include(
"funciones.php"); 
$cnx conectar(); 
$res mysql_query("SELECT id,palabra,definicion FROM en_diccionario ORDER BY id DESC LIMIT 10") or die (mysql_error()); 

?> 
<?php 
defined
'_VALID_MOS' ); 

class 
HTML_diccionario 

    function 
inicio($rows,$pageNav$search) { 
        global 
$mosConfig_live_site
         
        
?> 
         
        <script language="javascript" type="text/javascript"> 
         
            function def(fila,palabra,definicion){ 
                var mydiv = document.getElementById("definicionTexto"); 
                var quito = document.getElementById("def"); 
                if(quito != null) 
                    mydiv.removeChild(quito); 
                 
                var texto = '<div id="def"><b style="color:#75387A;">'+palabra+'</b><br><br>'+definicion + '</div>'; 
                mydiv.innerHTML = texto; 
            } 
             
        </script> 
         

        <div id="diccionario"><span id="volver" onclick="window.history.go(-1);"><img src="/atras.jpg" width="52" height="9" border="0" /></span><img src="/titdiccio.jpg" width="580" height="141" /><br />        <div class="inicio-texto"> 
    <table width="100%" border="0"> 
  <tr> 
    <td><p>Un fino hilo de acero, sarcástico y afilado, atraviesa el corazón de este peculiar diccionario, (en la actualidad es el más extenso de toda la web) escrito para provocar, para despertar conciencias dormidas, azote de complacientes y antídoto para incautos.<br /> 
      <br /> 
      Si un día cualquiera, sin venir a cuento, uno se despierta con injustificado optimismo, pensando que en el mundo del vino todo es maravilloso, nada como leer unas cuantas acepciones de este diccionario para salir rápidamente de su estúpido ataque de candor.<br /><br /> 
      Enópata. 
      <br /> 
      <p><span style="text-decoration: none; color: #666666; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: normal; font-size: 10px;">--------------------------------------------------------------------------------------------------------------</span> 
    </p> 
      <p><span style="text-decoration: none; color: #ab043c; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: normal; font-size: 12px;">&Uacute;LTIMAS PALABRAS AÑADIDAS:</span><br /> 
      </p> 

<table width="100%"  border="0" cellpadding="2" cellspacing="2"> 

<tr> 
<th scope="col"><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> 
<tr class="cabeceraBold"> 
<td width="100" height="30" class="cabeceraBold">Últimas Palabras</td> 
<td colspan="2" class="cabeceraBold">&nbsp;</td> 
</tr> 
<? 
if (mysql_num_rows($res) > 0) { 
//si hay resultados. 
while(list($id,$palabra,$definicion) = mysql_fetch_array($res)){ 
?> 
<tr> 
<td colspan="2" valign="top" class="texto"><? echo $palabra?></td> 
</tr> 
<? 
}//fin del while 
}else{ 
//no hay resultados 
?> 
<tr> 
<td colspan="3" align="center">No hay datos</td> 
</tr> 
<? 
}//fin del if/else de resultados 
?> 
<tr> 
<td height="30" colspan="2" class="pie"><p>&nbsp;</p>          </td> 
<td width="86" height="30" align="right" class="pie">&nbsp; </td> 
</tr> 
</table></th> 
</tr> 
</table> 
      <p>        <br /> 
         
        <br /> 
      </p></td></tr></table></div> 
                        <div id="buscar"> 
                    <form method="get" action="index.php" name="Form" > 
                    <input type="text" name="search" value="<?php echo htmlspecialchars$search );?>" class="text_area"/> 
                    <input type="submit" value="Buscar" /> 
                    <input type="hidden" name="option" value="diccionario" /> 
                    <input type="hidden" name="task" value="inicio" /> 
                    </form> 
          </div> 
          <div id="abc"> 
<table class="dicc-letters"> 
                    <tr> 
                    <?php 
                    
for ($i="A" $i!="AA" $i++) { 
                        
$imp $i
                        if(isset(
$_REQUEST['letra'])){ 
                            if(
$_REQUEST['letra'] == $i
                                
$imp '<font style="color:#6f0327;">'.$i.'</font>'
                        } 
                             
                        echo 
'<td width="3%" align="center" onclick="window.location.href=\''.$mosConfig_live_site.'/index.php?option=diccionario&task=inicio&letra='.$i.'\';">' $imp '</td>'
                    } 
                    
?> 
                    </tr> 
            </table> 
          </div> 

                <div class="diccionario-texto">     
                    <?php 
                    
if(count($rows)>0){ 
                        
?> 
                        <table border="0" cellpadding="1" cellspacing="0" class="dicc-words"> 
                        <?php 
                            
for($i=0;$i<count($rows);$i++){ 
                                
//$def = eregi_replace('< *(br)[^>]+>','&lt;br&gt;',$rows[$i]->definicion); 
                                //$def = eregi_replace('< *(p)[^>]*>','&lt;p&gt;',$def); 
                                //$def = eregi_replace('< */(p)[^>]*>','&lt;/p&gt;',$def); 
                                //$def = eregi_replace('<[^>]+>','',$def); 
                                //$def = eregi_replace('&lt;br&gt;','<br>',$def); 
                                //$def = eregi_replace('&lt;p&gt;','<p>',$def); 
                                //$def = eregi_replace('&lt;/p&gt;','</p>',$def); 
                                 
                                //$def = eregi_replace('< *span[^>]+>','',$rows[$i]->definicion);                                             
                                //$def = eregi_replace('< */ *span[^>]+>','',$def); 
                                //$def = eregi_replace('img style','w1w2w3w4w5',$def); 
                                //$def = eregi_replace(' *style="[^"]+"','',$def); 
                                //$def = eregi_replace(' *class="[^"]+"','',$def); 
                                //$def = eregi_replace(' *id="[^"]+"','',$def); 
                                //$def = eregi_replace('w1w2w3w4w5','img style',$def); 
                                
$def htmlentities($rows[$i]->definicion); 
                                
$def eregi_replace('\'','\\\'',$def); 
                                
$def trim($def); 
                                
$def str_replace("\x20",' ',$def); 
                                
$def str_replace("\x09",' ',$def); 
                                
$def str_replace("\x0A",' ',$def); 
                                
$def str_replace("\x0D",' ',$def); 
                                
$def str_replace("\x00",' ',$def); 
                                
$def str_replace("\x0B",' ',$def); 
                                 
                                
$pal_mos eregi_replace(':$|\.$','',$rows[$i]->palabra); 
                                echo 
'<tr onmouseover="def(this,\''.ucfirst($pal_mos).':\',\''.$def.'\');"><td>'
                                echo 
ucfirst($pal_mos); 
                                echo 
'</td></tr>'
                            } 
                        
?> 
                        </table> 
                        <?php 
                    

                    
?> 
                    <?php if($pageNav->total 5){?> 
                        <div id="abc2"> 
                            <table border="0" cellpadding="0" cellspacing="0" align="center"> 
                            <tr><td> 
                            <?php 
                            $link 
'index.php?option=com_diccionario&amp;task=inicio'
                            if(isset(
$_REQUEST['letra'])){ 
                                
$link 'index.php?option=com_diccionario&amp;task=inicio&amp;letra='$_REQUEST['letra']; 
                                } 
                                echo 
$pageNav->writePagesLinks($link); 
                            
?> 
                            </td></tr> 
                            </table> 
                        </div> 
                    <?php ?> 
                </div> 
             
                <div id="definicion"> 
                    <div id="definicionTexto"> 
                    </div> 
                </div> 
        </div> 
                 
        <?php 
    


?> 
        <div id="flotante">Ferrer y Garc&iacute;a Enoconsultores S.L. | Calle Cuenca, 123 Bajo, 
          46007  
          Valencia. | +34 96 341 13 76 | <a href="mailto: [email protected]" class="email2"><br /> 
            [email protected]</a>| <a href="http://www.enopata.com/index.php?option=local&amp;task=intro" class="email2"> Contacto</a>| <a href="http://www.enopata.com/index.php?option=activ&amp;task=inicio" class="email2">Cursos &amp; Actividades</a> |  
          Dise&ntilde;o Web: <a href="http://www.condoshielos.com" class="email2">www.condoshielos.com</a><a href="http://www.enopata.com/index.php?option=sumiller&amp;task=inicio" class="email2"></a></div>

Etiquetas: componente
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 15:02.