Foros del Web » Programando para Internet » PHP »

guardar registro para tablas relacionales

Estas en el tema de guardar registro para tablas relacionales en el foro de PHP en Foros del Web. Buenas, estoy ideando un script para salvar registros en una tabla relacional de las de n a n, lo que pasa es que me he ...
  #1 (permalink)  
Antiguo 07/01/2008, 23:24
 
Fecha de Ingreso: junio-2002
Mensajes: 57
Antigüedad: 21 años, 10 meses
Puntos: 0
guardar registro para tablas relacionales

Buenas, estoy ideando un script para salvar registros en una tabla relacional de las de n a n, lo que pasa es que me he atascado en la parte en la que comprueba si ese registro ya está metido para esa relación. Me explico, tengo categorías, y tengo páginas, a cada página le puedo poner varias categorías y viceversa.

Lo que quiero hacer es el trozo que me mira a ver si para esa página está la categoría que estoy metiendo y si no está la guarda, y si está la borra, y si hay categorías que no estoy metiendo en este momento quitarla de esas categorías.

lo que tengo es lo siguiente:
Código PHP:
function cat_rel_save($page,$cats){
//separamos las categorías por sus ids
$cats explode(',',$cats);
//ahora procesamos cada id para meterla en la bd
    
foreach($cats AS $categorie){
        
$result $db->sql_query("SELECT * FROM ".$prefix."cat_rel_page WHERE page_id='$page'");
        
$row $db->sql_fetchrow($result);
            foreach(
$row['cat_id'] AS $catid){
                if(
$categorie == $catid){

                }
                
    }

Lo que pasa es que no sé si lo estoy haciendo bien por que me estoy liando y no sé si me va a comprobar lo que quiero, aunque solo sea una pista de por donde seguir estaré agradecido en el alma.

Como info adicional digo que el explode viene por que de entrada las categorías me vienen por ids separadas por comas, así por ej 4,56,3,67,8,76.

Gracias por la ayuda.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:04.