A ver si puedo aclarar el panorama, tengo lo siguiente... una base de datos llamada "noticiero" con varias tablas entre ellas la llamada "nota" y otra llamada "varios" son iguales a no ser por un campo !!! la estructura es la siguiente:
tabla nota
----------
id
Nombre_nota
Responsable
Camara
Fecha_Make
Entradilla
Scrip
TEXTOS
Pie
Fecha_EDIT
Fecha_Air
Soporte
Comienza
Termina
Dura
Video_Audio
Estado
Editor
Edicion
Disponible
set
item
order
presenta
la tabla "varios" es igual pero con un campo mas llamado "color"
el problema es el siguiente... necesito hacer una consulta a la base de datos de las dos tablas a la vez para luego hacer via ajax un update, ese no es el problema, pero les muestro como lo hago !!!!
Código PHP:
<?
mysql_connect('localhost', 'fermdp', 'gio'); mysql_select_db('noticiero'); function parse_data($data)
{
$containers = explode(":", $data);
foreach($containers AS $container)
{
$container = str_replace(")", "", $container);
$i = 0;
$lastly = explode("(", $container);
$values = explode(",", $lastly[1]);
foreach($values AS $value)
{
if($value == '')
{
continue;
}
$final[$lastly[0]][] = $value;
$i ++;
}
}
return $final;
}
function update_db($data_array, $col_check)
{
foreach($data_array AS $set => $items)
{
$i = 0;
foreach($items AS $item)
{
$item = mysql_escape_string($item);
$set = mysql_escape_string($set);
mysql_query("UPDATE nota SET `set` = '$set', `order` = '$i' WHERE `item` = '$item' $col_check");
mysql_query("UPDATE varios SET `set` = '$set', `order` = '$i' WHERE `item` = '$item' $col_check2");
$i ++;
}
}
}
require_once('sajax.php');
sajax_init();
function sajax_update($data)
{
$data = parse_data($data);
update_db($data, "AND (`set` = 'sajaxb2' OR `set` = 'sajax2')");
return 'y';
}
sajax_export("sajax_update");
sajax_handle_client_request();
?>
El TEMA viene aqui...originalmente para consultar y mostrar una SOLA TABLA usaba...
Código PHP:
<? $r = mysql_query("SELECT * FROM nota WHERE `set` = 'sajaxb2' AND `Disponible` = 'si' ORDER BY `order` ASC");
$numero = 1;
while($rw = mysql_fetch_array($r))
{... Y MI CODE PARA MOSTRAR LOS REGISTROS DESEADOS !!!
pero... al querer hacer una consulta "DOBLE" no logro que me muestre los registros que quiero !!!
BUAAAAAAA !!!!!!
Lo que quiero que me consulte y muestre es lo siguiente "TODOS LOS REGISTROS DE LAS DOS TABLAS DONDE LOS CAMPOS "set" DE AMBAS SEAN = "sajaxb2" Y LOS CAMPOS DISPONIBLES DE AMBAS = a "si" ORDENADAS POR el CAMPO "order" QUE EN AMBAS TIENEN NUMEROS QUE NO SE REPITEN !!! POR LO QUE ASUME EN PRINCIPIO NO HABRIA PROBLEMA !!!!
Lo que he usado para esta consulta es todas las siguientes opciones probando de a una y ninguna de ellas me devolvio el resultado deseado !!!!
Código PHP:
$r = mysql_query("SELECT * FROM nota, varios WHERE nota.set = 'sajaxb2' AND nota.Disponible = 'si' AND nota.set = varios.set AND nota.Disponible = varios
Disponible ORDER BY `order` ASC");
$r = mysql_query("SELECT * FROM nota, varios WHERE nota.set = 'sajaxb2' AND nota.Disponible = 'si' AND nota.set = varios.set ORDER BY nota.order ASC") or
die( mysql_error() ) ;
$r = mysql_query("SELECT * FROM nota WHERE `set` = 'sajaxb2' AND `Disponible` = 'si' ORDER BY `order` ASC");
$sql_1 = "SELECT * FROM nota WHERE `set` = 'sajaxb2' AND `Disponible` = 'si' ORDER BY `order` ASC";
$sql_2 = "SELECT * FROM varios WHERE `set` = 'sajaxb1' AND `Disponible` = 'si' ORDER BY `order` ASC";
$r = $sql_1. " UNION ".$sql_2 ;
ovbiamente luego las recorro con un while para mostrarlas...
$numero = 1;
while($rw = mysql_fetch_array($r))
{...
....
$numero ++;
}
los errores que he tenido fueron desde no mostrar nada a mostrarme resultados duplicados, triplicados, etc...
Espero que me puedan ayudar a encontrar un "FILTRO" para dicha consulta a la db
Desde ya ENORMEMENTE AGRADECIDO por su ayuda !!!