¿que errores hay en este codigo para contabilizar resultados de una tabla con php en mysql?

pretendo contabilizar los resultados iguales de dos tablas en mysql y no consigo mas que errores asi que si alguien sabe en que falla o como hacerlo.

--
$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...