Unidadvirtual : Funcionamiento Articulos Relacionados

Fecha Publicación:       25 de Octubre de 2023
Fecha Modificación:       21 de Marzo de 2024

Formulario Articulos : Actualizar e Insertar

Recuerda activar el check Habilitar Recursos Relacionados porque en Modulos > articulopagina.php se comprueba si es = 1 se muestra los articulos relacionados 

Webadmin > index.php

Desde Gestor Articulos esta la opcion Insertar Articulos Relacionados envia a Webadmin > index.php el parametro com_articulos_relacionados   

 

/webadmin/index.php?option=com_articulos_relacionados&id=1000000023102002004225EQ

 

switch ($_SESSION['option']) {

			case "com_articulos_relacionados": 
				
			 	include_once ( 
$INC_DIR . '/webadmin/mantenimiento/Gestor_Articulos_Relacionados/gestor-articulos-relacionados.php'); 
				 break;		

			case "com_articulos_relacionados_eliminar": 
			
			 	include_once ( $INC_DIR . 

'/webadmin/mantenimiento/Gestor_Articulos_Relacionados/gestor-listado-articulos-relacionados.php'); 	
				

 

Los archivos estan en la carpeta  \webadmin\mantenimiento\Gestor_Articulos_Relacionados

Archivo  gestor-articulos-relacionados.php

Aqui esta el texto 

 → Insertar Articulos Relacionados solo padreInsertar Articulos Relacionados Todos / Cancelar  

 → En el boton Insertar Articulos Relacionados solo padre se envia el parametro com_insertar_articulos_relacionados_solo_padre  al archivo  webadmin> procesar-accion.php

 → En el boton Insertar Articulos Relacionados Todos se envia el parametro com_insertar_articulos_relacionados_todos  al archivo  webadmin> procesar-accion.php

 

Resumen parametros: 

 → com_insertar_articulos_relacionados_solo_padre= solo se relaciona el padre con los post escogidos 

 → com_insertar_articulos_relacionados_todos= se relaciono todos tanto el padre como todos los hijos entre si 

procesar-accion.php

Codigo com_insertar_articulos_relacionados_solo_padre

<?php		
	break;	
	
	case "com_insertar_articulos_relacionados_solo_padre":	
		//echo "hola a todos ---------"	;exit;

		foreach ($_POST['cid'] as $id){ 

			$codigoid = strstr($id, '&', true); 
			
			//buscamos si lo hemos ingesado (tanto al padre como a los hijos), si no lo encuentra lo insertamos
			//  buscamos el padre $ccodcontenido_p y los hijos (los articulos relacionados $codigoid )
			
			$sql_buscar_art_rela = "SELECT * FROM  articulos_relacionados WHERE  
			ccodcontenido_p='".$ccodcontenido_p."' and ccodcontenido_h='".$codigoid."'";			
			$rs_buscar_art_rela = db_query($sql_buscar_art_rela);
			$total_buscar_art_rela = db_num_rows($rs_buscar_art_rela);	
			
			//echo $sql_buscar_art_rela ;exit;
			//si nolo enecuentra y es diferente el padre con el hijo es decir  
			//Photoshop : Tipos de Mascaras de Capas  no puede tener un articulo relacionado el mismo 
			
			if ($total_buscar_art_rela==0 and $ccodcontenido_p<>$codigoid){  
				//insertamos al padre el codigo del hijo
				$sSQL_padre = "insert into articulos_relacionados(ccodcontenido_p,ccodcontenido_h)
				value('".$ccodcontenido_p."','".$codigoid."')";
				db_query($sSQL_padre);

				//Insertamos al hijo el codigo del padre
				//ALex solo insertar al hijo pero no hijo a hijo por esolo desabilite
				$sSQL_hijo = "insert into articulos_relacionados(ccodcontenido_p,ccodcontenido_h)
				value('".$codigoid."','".$ccodcontenido_p."')";
				//db_query($sSQL_hijo);
			}	
		}	
		//echo "FIN INSERCION ---------"	;exit;	
	?>
	<script language='JavaScript'> 
        page= "<?=$NOMBREEMPRESA?>"; 
        ROOT_PATH = "<?=$ROOT_PATH?>";
        location.href= ROOT_PATH+'/webadmin/index.php?option=com_articulos&mensaje=Articulos Relacionados Ingresados correctamente' 
    </script>  

 

Codigo com_insertar_articulos_relacionados_todos

 

  <?php  
  break;	
  case "com_insertar_articulos_relacionados_todos":		
   		foreach ($_POST['cid'] as $id){ 
			$codigoid = strstr($id, '&', true); 
			/*---inicio Agregamos al array los codigos de los hijos --------*/ 
			$arr_hijo[] = $codigoid ; //Agregamos los hijos a un array en PHP
			
			// ----------INICIO Si hay un solo hijo entra aqui----------------------------- 
			$sql_buscar_art_rela = "SELECT * FROM  articulos_relacionados WHERE  
			ccodcontenido_p='".$ccodcontenido_p."' and ccodcontenido_h='".$codigoid."'";			
			$rs_buscar_art_rela = db_query($sql_buscar_art_rela);
			$total_buscar_art_rela = db_num_rows($rs_buscar_art_rela);	

			if ($total_buscar_art_rela==0 and $ccodcontenido_p<>$codigoid){  
				//insertamos al padre el codigo del hijo
				$sSQL_padre = "insert into articulos_relacionados(ccodcontenido_p,ccodcontenido_h)
				value('".$ccodcontenido_p."','".$codigoid."')";
				db_query($sSQL_padre);

				$sSQL_hijo = "insert into articulos_relacionados(ccodcontenido_p,ccodcontenido_h)
				value('".$codigoid."','".$ccodcontenido_p."')";
				db_query($sSQL_hijo);
			}						
			// ----------FIN Si hay un solo Hijo ----------------------------- 
		}		

 		// ----------INICIO  Insertamos hijos con hijos----------------------------- 

		$longitud = count($arr_hijo);  //saco el numero de elementos
		//echo "Nro de elementos en array ". $longitud ;exit;
		//Recorro todos los elementos del array
		//echo "-------Articulo relacionado 1----------";exit;
		for($i=0; $i<$longitud; $i++)
		{			
			//echo "-------Articulo relacionado 2----------";exit;
			for($s=0; $s<$longitud; $s++)
			{
				//echo "-------Articulo relacionado 3----------";exit;
				//echo "arr_hijo(i)=".$arr_hijo[$i] .
				// "----arr_hijo(s)=".$arr_hijo[$s];exit;

				// var_dump($arr_hijo); exit;

				//var_dump($arr_hijo); exit;
				//alex si hay un solo hijo aqui no entra porque i=s
				if ($arr_hijo[$i]<>$arr_hijo[$s]){  
				//echo "-------Articulo relacionado 4----------";exit;

					$sql_buscar_art_rela_se = "SELECT * FROM  articulos_relacionados WHERE  
				ccodcontenido_p='".$arr_hijo[$i] ."' and ccodcontenido_h='".$arr_hijo[$s]."'";

				$rs_buscar_art_rela_se = db_query($sql_buscar_art_rela_se);
				$total_buscar_art_rela_se = db_num_rows($rs_buscar_art_rela_se);	
				
					if ($total_buscar_art_rela_se==0 ){

						$sSQL_secundario = "insert into articulos_relacionados
						(ccodcontenido_p,ccodcontenido_h)
						value('".$arr_hijo[$i]."','".$arr_hijo[$s]."')";

						db_query($sSQL_secundario);
						//echo $array[$i];
						//echo "-------Articulo relacionadoinsertado----------";exit;
					}
						
				}		
			}	
			//exit;
		}
		//var_dump($arr_hijo); exit;	
	?>
	<script language='JavaScript'> 
        page= "<?=$NOMBREEMPRESA?>"; 
        ROOT_PATH = "<?=$ROOT_PATH?>";
        location.href= ROOT_PATH+'/webadmin/index.php?option=com_articulos&mensaje=Articulos Relacionados Ingresados correctamente' 
    </script>  

Mostrar el Articulo Relacionado

Modulos > articulopagina.php

<?php
 //echo "----- articulosrelacionados  : " . $articulosrelacionados;exit; 
  if ($articulosrelacionados == 1) {
	//include "modulos/articulo_relacionado.php";
	//include_once "modulos/articulo_relacionado_modelo2.php";
       include_once "modulos/articulo_relacionado_modelo3.php";
    }
?>

 

Articulo : 562 - Veces Leidas
Compartir Articulo:
×

¡Apóyame suscribiéndote a mi canal!

Tutoriales sobre Diseño Web