Ver Mensaje Individual
  #10 (permalink)  
Antiguo 23/08/2008, 08:51
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 7 meses
Puntos: 45
Respuesta: Añadir elemento a array dinámicamente

Adler, como has dicho funciona, pero si inicializas arra con arra = [0] ya le estás diciendo que el primer elemento es cero. También decirte que la sintaxis correcta es arra.push(elemento) y no arra.push = (elemento) como has escrito (¿te funcionó? )

En este caso no han hecho falta comillas en javascript, porque son números. Pero en caso de ser Strings habría que tener cuidado con las comillas, y si los registros de la BD pudieran contener comillas también, escaparlas con \ o eliminarlas.

Creo que la forma más fácil de hacerlo (consimiendo menos recursos) es eliminando el bucle javascript y construyendo un string en PHP para "pegarlo" en el código javascript:
Código PHP:
<?
include("conexion.php");

$res mysql_query("select * from categorias"$link);
$ristra "";                                        // aquí irán todos los elementos para el array javascript
while( $row mysql_fetch_assoc($res) )
    
$ristra .= "'" $row["nombre"] . "', ";                    // añadimos un elemento a la ristra con una coma para el siguiente elemento
$ristra ereg_replace(", $"""$ristra);            // quitamos la coma final residual

?>


<script type="text/javascript">
<!--

var miArr = [<?=$ristra?>];      // Saldrá en el código fuente generado lo siguiente:
// var miArr = ['útiles', 'higiene personal', 'hábitos diarios', 'electrónica', 'cuerpo', 'vestimenta'];

-->
</script>

Saludos.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.