Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/03/2015, 18:50
sthiguero
 
Fecha de Ingreso: enero-2012
Ubicación: Torrellano
Mensajes: 7
Antigüedad: 12 años, 3 meses
Puntos: 0
PHP SQL: Valores siempre aparecen como Enteros

Buenos días,

Honestamente me siento un poco avergonzado por compartir esto, pero la verdad es que me siento un poco desesperado con el pequeño problemilla que tengo:

Estoy intentado mostrar la información de una tabla mediante un bucle en PHP. Suena bastante simple, he aquí una versión simplificada del código:

<?php
require("phpsqlinfo_dbinfo.php");

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT * FROM polygons";
$result = $conn->query($sql);
while($row[] = $result->fetch_assoc()) { }
$cuenta=mysqli_num_rows($result);
echo 'document.getElementById("demo").innerHTML ="Numero total de valores: " + ' . $cuenta . ' + "</br>";';
for ($i = 0; $i < $cuenta; $i++) {
$val[$i] = $row[$i]["name"];


echo 'document.getElementById("demo").innerHTML = document.getElementById("demo").innerHTML + "</br>Valor " +'. $i .'+ ": " + '.$val[$i].'+ "</br>";';

}
?>

¿Cuál es el problema? El problema es que todos los valores extraídos desde la base de datos siempre aparecen como ENTEROS, y los datos son nombres, osease de tipo VARCHAR.
Cada vez que el bucle muestra la variable $val[$i], intenta convertir el nombre extraído de la base de datos a entero, por lo que da error y se rompe.

He intentado convertir las variables en string mediante (string) y otros métodos, pero ninguno parece funcionar.

Lo que me confunde es que si lo intento de la siguiente manera, mediante Javascript y un "echo", entonces sí que me lo muestra como String:

document.getElementById("demo").innerHTML='<?php echo $row[''+ 1 + '']["name"]; ?>';

Espero que no os importune este tema.