Ver Mensaje Individual
  #14 (permalink)  
Antiguo 07/09/2009, 02:38
Avatar de anibalag85
anibalag85
 
Fecha de Ingreso: marzo-2009
Mensajes: 52
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: Delete u poco extraño

Mirad, he hecho este código en PHP, creo que está bien pero tengo algunos problemas.

Código PHP:
/*******Aquí se empieza el delete*******/
                
/*Primero empezamor rellenando los arrays*/
                
                
$sentenciaBorrar="select * from CATEGORIAS_PRODUCTOS where Id_CategoriaPadre=".$nombre_campo;//Miramos todas las categorias hijo que tiene
                
$resultBorrar=mysql_query($sentenciaBorrar,$link);
                
                
$cont=1;
                while(
$datosBorrar=mysql_fetch_array($resultBorrar)){
                    
                    
$arrayBorrar.$cont = new array();
                    
array_push($arrayBorrar.$cont,$datosBorrar['Cod_Categoria']); //Metemos en otro array los codigos de los hijos
                    
                
}
                
                
//Empezamos un bucle para ver todos los hijos del todos los padres del array
                
                
while($arrayBorrar.$cont[0]!=""){//Primero hacemos un bucle de para rellenar arrays segun su nivel y que pare cuando el último relleno esté vacio
                    
                    
$cont++;//Cuenta el array que estamos rellenando
                    
$contAnterior=$cont-1;//Para hacer la busqueda en el erray anterior
                    
$numero=$arrayBorrar.$contAnterior;
                    
$maximo=$numero.length;//calculamos la  longitud del array anterior
                    
                    
                    
for($i=0;$i<=$maximo;$i++){//Hacemos otro bucle para pasar por todos los registros del array anterior y sacar sus hijos
                                                
                        
$sentenciaBorrar2="select * from CATEGORIAS_PRODUCTOS where Id_CategoriaPadre=".$arrayBorrar.$contAnterior[$i];//Miramos todas las categorias hijo que tiene
                        
$resultBorrar2=mysql_query($sentenciaBorrar2,$link);
                        
                        while(
$datosBorra2r=mysql_fetch_array($resultBorrar2)){
                            
                            
array_push($arrayBorrar.$cont,$datosBorrar2['Cod_Categoria']); //Metemos en otro array los codigos de los hijos
                        
}
                    }
                }
/*Terminamos de rellenar los arrays*/
                /*-------------------------------------------------------------------------------------------------------------------------*/
                /*Empezamos a eliminar*/
                
                
for($cont;$cont>=0;$cont--){
                    
                    
$numero=$arrayBorrar.$cont;
                    
$maximo=$numero.length;//calculamos la  longitud del array
                    
for($k=1;$k<=maximo;$k++){
                        
                        
$sentencia="delete from CATEGORIAS_PRODUCTOS where Cod_Categoria=".$arrayBorrar.$cont[$k];
                        
                    }
                    
                    
                }
                
                
/*Terminamos de eliminar*/
/************Aquí se termina el delete***********/ 
Pero tengo problemas al nombrar a los arrays como $arrayBorrar.$cont, porque no me lo admite, yo quería ponerlo así para poder hacer un bucle while y que cada array se llamara diferente.

Me gustaría saber vuestra opinión que sois mas expertos que yo.
Si teneis cualquier duda sobre el código me lo comentais y explico lo que pretendo hacer.

Grasias a todos