¿que errores hay en este codigo para contabilizar resultados de una tabla con php en mysql?
--
$dbsum=mysql_connect ($sql_host, $sql_usuario, $sql_pass) or die ('problema conectando porque :' . mysql_error());
mysql_select_db ($sql_db,$dbsum);
$tb1 = "SELECT * FROM $sql_tabla1";
$tb2 = "SELECT * FROM $sql_tabla2";
$tbl1= mysql_query($tb1, $dbsum) or die ("problema con query en suma 1");
$tbl2= mysql_query($tb2, $dbsum) or die ("problema con query en suma 2");
$suma = 0;
while($line1 = mysql_fetch_row($tbl1))
{
while($line2 = mysql_fetch_row($tbl2))
{
if ($line1 = $line2)
{
$suma = $suma + 1;
}
else
{
}
};
$subtotal = "INSERT INTO $sql_suma (suma) ";
$subtotal .= "VALUES ('$suma') ";
$subtotal .= "ON DUPLICATE KEY UPDATE suma='$suma'";
$hecho = mysql_query($subtotal);
};
un saludo y gracias
Respuestas:
te voy a dar el como yo veo una DB
primero creo un archivo con la conexion a la base de datos.
conn/conn.php:
<?php
$hostname_conn = "localhost";
$username_conn = "usuario";
$password_conn = "*****";
$conn = mysql_connect($hostname_conn, $username_conn, $password_conn) or die(mysql_error());
$database_conn = "tu_db";
?>
es importante por seguridad hacerlo de este modo, deja la conexion de la DB aparte de todo el resto del codigo ahora vamos a usar esta conexion.
index.php:
<?php
require_once("conn/conn.php");
mysql_select_db($database_conn. $conn);
// luego guardo una consulta en la variable $sql
$sql = 'SELECT * FROM `tu_tabla` LIMIT 0, 30 ';
//ejecuto la consulta y la guardo en una matriz
$matriz = mysql_query($sql, $conn) or die(mysql_error());
// y extraigo finalmente los resultados de la consulta dentro de un ciclo while
while($fila = mysql_fetch_assoc($matriz_db)) {
echo $fila['campo1'].'<br />'.$fila['campo2'].'<br />'.$fila['campo3'].'<br /><hr>';
};
?>
parece ke hay algo mal en tu ciclo
hay un problema a mi humilde entender y es que estas comparando con los dos whiles anidados, una columna de la primer tabla contra todas las columnas de la otra tabla, y si los tipos de datos de las columnas son distintos eso te genera tantos errores como filas tenga la tabla 1, y eso para empezar nomas..
El problema es simple para mí que ya me ha dado dolores de cabeza unas 23423512352345 veces. Tal vez estés acostumbrado a trabajar con otros lenguajes y sea por eso que utilizás un solo signo "=" en la comparación, lo que hace que la linea 1 se iguale a la linea 2 en lugar de hacer una comparación. Lo correcto sería:
if ($line1 == $line2)
Contestar al poste del usuario, correccion del contenido de la garantia de EsQnA.com no.
preguntas y respuestas agregadas...
- mi webcam no conecta en el messenger?
- como puedo hacer un popup en dreamweaver?
- quiero saber que es webpageremaker y que se puede hacer con el?
- alguien sabe si puedo dar con la persona q me da tokes al movil teniendo su numero?
- Cómo se puede convertir un archivo de word en pdf?
- Ayuda¿ Como quitar de Default Player al Nero ?
- como grabar una pelicula echa en el movie maket y verla en el dvd o otro programa para hacer peliculas?
- que programa puedo utilizar en español, para manipular vídeos?