Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/06/2010, 15:28
warbandit69
 
Fecha de Ingreso: diciembre-2008
Ubicación: http://www.solucionesrios.tk/
Mensajes: 413
Antigüedad: 15 años, 4 meses
Puntos: 19
Respuesta: Problemas con Arreglo dentro de otro Arreglo

Ok amigo me funciono perfecta tu solucion sin ningun problema ahora tengo un detalle en mi funcion, es que cuando la ejecuto directo con php no me funciona, la copio y la pego desde el codigo fuente de la pagina directa, y me funciona, es decir asi no me funciona:

Código PHP:

<script type="text/javascript">
<?php 
print grid_scroll_bar("PRUEBA","SELECT *
FROM `personal`"
,"PRUEBA","cedula,nombre,apellido,correo,usuario","","320","600",$hostname_obras,$database_obras,$username_obras,$password_obras,$columnas); 
?>
</script>
Asi si me funciona (dandole al navegador boton derecho, ver codigo fuente, copiando el codigo y poniendolo directo), y acomodando los espacios

Código HTML:
<script type='text/javascript'>

Ext.onReady(function(){

	var myData = [
		['15727241','Ricardo','Ríos','[email protected]','ricardorios'],
		['9792332','Vitaliano','Giannangeli','[email protected]','vgr']
	];

	var store = new Ext.data.Store({
	proxy: new Ext.ux.data.PagingMemoryProxy(myData),
	remoteSort:true,
	sortInfo: {field:'cedula', direction:'DESC'},
	reader: new Ext.data.ArrayReader(
	{fields: [
		{name:'cedula'},
		{name:'nombre'},
		{name:'apellido'},
		{name:'correo'},
		{name:'usuario'}]
	})
	})

	var grid = new Ext.grid.GridPanel(
		{store: store,    columns: [
			{id: "cedula", width: 120,  sortable: true, dataIndex: 'cedula'}, 
			{header: "nombre", width: 120, sortable: true, dataIndex: 'nombre'},
			{header: "apellido", width: 120, sortable: true, dataIndex: 'apellido'},
			{header: "correo", width: 120, sortable: true, dataIndex: 'correo'},
			{header: "usuario", width: 120, sortable: true, dataIndex: 'usuario'}    
	],   

	stripeRows: true,    
	autoExpandColumn: 'cedula',    
	height:320,   
	width:600,   
	frame:true,   
	title:'PRUEBA',  

	plugins: new Ext.ux.PanelResizer({       
		minHeight: 100   
	}),

	bbar: new Ext.PagingToolbar({
		pageSize: 10,
		store: store,
		displayInfo: 
		true,plugins: new Ext.ux.ProgressBarPager()  
	})

	});

	grid.render('PRUEBA');
	store.load({params:{start:0, limit:10}});
	});

</script> 
Aca mi función en php Que aun no he logrado que me sirva bien T_T

Código PHP:

function grid_scroll_bar($titulo,$consulta,$div,$campos,$campos_hint,$alto,$ancho,$hostname_obras,$database_obras,$username_obras,$password_obras,$columnas) {
    
$obras mysql_pconnect($hostname_obras$username_obras$password_obras) or trigger_error(mysql_error(),E_USER_ERROR);  //Se usan rutas persistentes
    
mysql_select_db($database_obras$obras);
    
$query_gridsql sprintf($consulta);
    
$gridsql mysql_query($query_gridsql$obras) or die(mysql_error());
    
$row_gridsql mysql_fetch_assoc($gridsql);
    
$totalRows_gridsql mysql_num_rows($gridsql);
    
$campo explode(",",$campos);
    
$total_campos count($campo);
    
$ancho_columnas $ancho/$total_campos;
    
$grid "Ext.onReady(function(){";
    
$grid .= "var myData = [";
    if (
$campos_hint!="") {
        
$query_hintsql "WHERE ".$campo[0]." LIKE '".$row_gridsql[$id_campo]."'";
        
mysql_select_db($database_obras$obras);
        
$query_hintsql sprintf($consulta);
        
$hintsql mysql_query($query_hintsql$obras) or die(mysql_error());
        
$row_hintsql mysql_fetch_assoc($hintsql);
    }
    
$l 0;
    do {
        
$arreglo_indices = array();
        
$l++;
        
$grid .= "[";
        for (
$i 0$i $total_campos$i++) {
            
$id_campo $campo[$i];
            
$arreglo_indices[] =  "'".$row_gridsql[$id_campo]."'";
        }
        if (
count($arreglo_indices) > 0) {
            
$arreglo1 implode(",",$arreglo_indices);
            
$grid .= $arreglo1;
        }
        
        if (
$totalRows_gridsql != $l) {
            
$grid .= "],";
        } else {
            
$grid .= "]";
        }
    } while(
$row_gridsql mysql_fetch_assoc($gridsql));
    
$grid .= "];";
    
// create the data store
    
$grid .= "var store = new Ext.data.Store({";
    
$grid .= "proxy: new Ext.ux.data.PagingMemoryProxy(myData),";
    
$grid .= "remoteSort:true,";
    
$grid .= "sortInfo: {field:'".$campo[0]."', direction:'DESC'},";
    
$grid .= "reader: new Ext.data.ArrayReader({";
    
$grid .= "fields: [";
    
//Empezar ciclo
    
for ($j 0$j $total_campos$j++) {
        
$arreglo_nombres[] = "{name:'".$campo[$j]."'}";
    }
    
$grid .= implode(",",$arreglo_nombres);
    
//Finalizar ciclo
      
$grid .= "]";
    
$grid .= "})";
    
$grid .= "})";
    
// create the Grid
    
$grid .= "var grid = new Ext.grid.GridPanel({";
    
$grid .= "store: store,";
    
$grid .= "    columns: [";
    
//Empezar el ciclo
    
for ($k 1$k $total_campos$k++) {
        
$arreglo_campos[] = "{header: \"".$campo[$k]."\", width: ".$ancho_columnas.", sortable: true, dataIndex: '".$campo[$k]."'}";
    }
    
//Finalizar ciclo
    
$grid .= "{id: \"".$campo[0]."\", width: ".$ancho_columnas.",  sortable: true, dataIndex: '".$campo[0]."'}, ".implode(",",$arreglo_campos);
    
$grid .= "    ],";
    
$grid .= "   stripeRows: true,";
    
$grid .= "    autoExpandColumn: '".$campo[0]."',";
    
$grid .= "    height:".$alto.",";
    
$grid .= "   width:".$ancho.",";
    
$grid .= "   frame:true,";
    
$grid .= "   title:'".$titulo."',";
    
$grid .= "  plugins: new Ext.ux.PanelResizer({";
    
$grid .= "       minHeight: 100";
    
$grid .= "   }),";
    
$grid .= "bbar: new Ext.PagingToolbar({";
    
$grid .= "pageSize: 10,";
    
$grid .= "store: store,";
    
$grid .= "displayInfo: true,";
    
$grid .= "plugins: new Ext.ux.ProgressBarPager()";
    
$grid .= "   })";
    
$grid .= "});";
    
$grid .= "grid.render('".$div."');";
    
$grid .= "store.load({params:{start:0, limit:".$columnas."}});";
    
$grid .= "});";

    return 
$grid;

__________________
http://www.solucionesrios.tk/

Visita mi Web!