Foros del Web » Creando para Internet » HTML »

No paso la validación. ¿Qué está mal en este código?

Estas en el tema de No paso la validación. ¿Qué está mal en este código? en el foro de HTML en Foros del Web. Buenos días. Estoy pasando una validación W3C XHTML y me da errores. Casi todo viene de un módulo PHP que tengo para que me muestro ...
  #1 (permalink)  
Antiguo 22/02/2007, 05:35
 
Fecha de Ingreso: junio-2006
Ubicación: Madrid - España
Mensajes: 179
Antigüedad: 17 años, 10 meses
Puntos: 6
No paso la validación. ¿Qué está mal en este código?

Buenos días. Estoy pasando una validación W3C XHTML y me da errores. Casi todo viene de un módulo PHP que tengo para que me muestro los juegos de forma aleatoria en la página de inicio. El código PHP de ese módulo es:

<?php
/**
* @version 1.0 $
* @package SMFArcadeRandom
* @copyright (C) 2005 Melissa Padilla
*
* This module assumes Simple Machines Forum (SMF) is installed, functioning and running wrapped in mambo with
* the mos-smf bridge. This module also assumes that smf_arcade is installed in SMF and functioning already.
*
*/

defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

global $database, $smf_prefix, $mosConfig_absolute_path, $boardurl;

//require($mosConfig_absolute_path . "/administrator/components/com_smf/config.smf.php");

// Retrieve module parameters or set defaults if module parameters empty
$count = intval( $params->get( 'count', 5 ) );
$noscore = $params->get( 'noscore', 'No Scores Yet');
$topscore = $params->get( 'topscore', 'Top Scores');
$gamefolder = $params->get( 'gamefolder', 'Games');
$show_thumb = $params->get('show_thumb', 'yes');
$show_game_name = $params->get('show_game_name', 'yes');
$show_scores = $params->get('show_scores', 'yes');
$ext = array('gif','GIF','png','PNG','jpg','JPG',); // Extensions to look for
$game_id = intval( $params->get( 'game_id', 55) );
// Load a random game
$query = "SELECT DISTINCT id , game, name, thumb FROM smf_games order by RAND() LIMIT 1";
$database ->setQuery("SELECT DISTINCT id , game, name FROM smf_games ORDER BY RAND() LIMIT 1");
$results = $database->loadObjectList();

//if ($result = $database->query()) {
// $row = mysql_fetch_object($result);
// $smfItemid = $row->id;
//}
//else {
// echo "Error fetching smfItemid: ".mysql_errno()." ".mysql_error();
// return false;
//}
foreach($results as $row){
// Build table with game thumbnail, title and link to arcade for playing
echo "<table border=\"0\" align=\"center\">";

if (strcasecmp($show_thumb, "yes") == 0){
// Set thumbnail of the random game selected above
$thumb = $boardurl. "/" .$gamefolder."/".$row->game.".gif";
echo "<tr><td colspan=\"2\" align=\"center\"><a href=\"index.php?option=com_smf&Itemid=" . $game_id . "&action=arcade;sa=play;game=" . $row->id . "\"><img src=\"$thumb\" border=\"0\"/></a></td></tr>";
}


if (strcasecmp($show_game_name, "yes") == 0){
// Set game name as link
echo "<tr><td colspan=\"2\" align=\"center\"><a href=\"index.php?option=com_smf&Itemid=". $game_id . "&action=arcade;sa=play;game=" . $row->id . "\">$row->name</a><br></td></tr>";
}

if (strcasecmp($show_scores, "yes") == 0){
// Retrieve highscores for the random game selected above based on 'count' module parameter
$query2 = "Select game, member, score, smf_members.ID_MEMBER, smf_members.realName from smf_games_high, smf_members WHERE game = '$row->game' AND smf_members.ID_MEMBER = smf_games_high.member ORDER BY score DESC LIMIT {$count}";
$database->setQuery("Select game, member, score, smf_members.ID_MEMBER, smf_members.realName from smf_games_high, smf_members WHERE game = '$row->game' AND smf_members.ID_MEMBER = smf_games_high.member ORDER BY score DESC LIMIT {$count}");
$HSrows = $database->loadObjectList();
$HSrow=$HSrows[0];

//Build last 'count' highscore rows or set to 'noscore' if no scores yet
if (!isset($HSrow->realName)){
echo "<tr><td colspan=\"2\" align=\"center\">" . $noscore . "</td></tr>";
}else{
echo "<tr><td colspan=\"2\" align=\"center\">" . $count . " " . $topscore . "</td></tr>";
foreach($HSrows as $HSrow){
echo "<tr ><td width='60%' class='sectiontableentry2'>" . $HSrow->realName . "</td><td width='40%' align='right' class='sectiontableentry2'>" . (float)$HSrow->score . "</td></tr>";

}
}
}
}

echo "</table>";

?>


Se que hay cosas que están mal, pero he hecho pruebas y no consigo averiguar cual es.

La parte en rojo, es la que creo, la que produce los fallos.

Si alguien puede /sabe ayudarme le estaré agradecido. Mi sitio es malastic . com.

Un saludo,
  #2 (permalink)  
Antiguo 22/02/2007, 06:39
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: No paso la validación. ¿Qué está mal en este código?

Pero mostrá el HTML generado, no PHP. Después de todo, lo que se valida es el HTML...
  #3 (permalink)  
Antiguo 22/02/2007, 10:21
Avatar de Bile  
Fecha de Ingreso: diciembre-2006
Mensajes: 786
Antigüedad: 17 años, 4 meses
Puntos: 9
Re: No paso la validación. ¿Qué está mal en este código?

Si quieres validar, no uses TABLAS, aprende a usar CSS.

Es un consejo
  #4 (permalink)  
Antiguo 22/02/2007, 11:57
 
Fecha de Ingreso: junio-2006
Ubicación: Madrid - España
Mensajes: 179
Antigüedad: 17 años, 10 meses
Puntos: 6
Re: No paso la validación. ¿Qué está mal en este código?

Cita:
Iniciado por Bile Ver Mensaje
Si quieres validar, no uses TABLAS, aprende a usar CSS.

Es un consejo
Gracias por el consejo, pero más o menos en CSS me defiendo. El problema real es al incorporar este módulo, en cuanto tóco algo se me jode. Por este motivo quería que alguno lo pudiera ver y decir que veía mal, porque ya he hecho varias pruebas y nada.

Se me ha olvidado preguntar si ves algún fallo o algo raro...

Un saludo,
  #5 (permalink)  
Antiguo 22/02/2007, 12:07
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.725
Antigüedad: 22 años, 2 meses
Puntos: 998
Re: No paso la validación. ¿Qué está mal en este código?

a) cono ya te dijieron, pon el HTML (o un lugar donde se pueda ver), el php no interesa. Lo que se valida es el código HTML final.
b) Si no pones el html, por lo menos di que errores te da el validador... hay millones de errores posibles.
c) usa etiquetas BBCode para colorear el código, así es + facil de leer
__________________
Pasamos tus PSD a HTML

Pobre del que lo sabe todo, porque no tiene nada más que aprender ni razón para vivir. -
  #6 (permalink)  
Antiguo 22/02/2007, 12:10
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 2 meses
Puntos: 535
Re: No paso la validación. ¿Qué está mal en este código?

<EDIT>

Cita:
Si alguien puede /sabe ayudarme le estaré agradecido. Mi sitio es http://www.malastic.com
</EDIT>


entre otras cosas que veo:

tenés un form (el de registro) que jamás cerraste.
tenés un <tr> vacío.
¿hay una tabla dentro de un <p>?
Código:
		</div></td></tr></table>		          							  </p>
Andá paso a paso arreglando esos errores o advertencias hasta depurar el código.
__________________
...___...
  #7 (permalink)  
Antiguo 22/02/2007, 14:07
 
Fecha de Ingreso: junio-2006
Ubicación: Madrid - España
Mensajes: 179
Antigüedad: 17 años, 10 meses
Puntos: 6
Re: No paso la validación. ¿Qué está mal en este código?

Cita:
Iniciado por webosiris Ver Mensaje
a) cono ya te dijieron, pon el HTML (o un lugar donde se pueda ver), el php no interesa. Lo que se valida es el código HTML final.
b) Si no pones el html, por lo menos di que errores te da el validador... hay millones de errores posibles.
c) usa
Buenas noches. La web es www . malastic . com (no me deja poner mi sitio porque no tengo 30 mensajes). He tenido que modificar el Quote porque aparecía una url y tampoco me dejaba. El código son unas 300 líneas, por eso no lo pego aquí.

Un saludo,
  #8 (permalink)  
Antiguo 23/02/2007, 01:56
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: No paso la validación. ¿Qué está mal en este código?

Hola malastic

Empieza por hacer lo que te dijo Al Zuwaga, con eso se corregirán varios de tus errores. El propio validador te indica en qué líneas están los fallos.

Saludos,
  #9 (permalink)  
Antiguo 26/02/2007, 04:17
Avatar de elquique  
Fecha de Ingreso: marzo-2004
Ubicación: Florida, Uruguay
Mensajes: 2.495
Antigüedad: 20 años, 1 mes
Puntos: 78
Re: No paso la validación. ¿Qué está mal en este código?

Cierto, corrige uno a uno y veras como otros que estan mas abajo tambien desaparecen y asi con paciencia lo vas logrando :)

Una cosa, ese es un modulo SMF, los errores que dicen te dan en tu home en el foro o en alguna otra interna del foro o tu web ?
__________________
Blog Jorge Oyhenard | Tutoriales Photoshop
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 02:16.