Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/02/2009, 09:18
Avatar de nes24
nes24
 
Fecha de Ingreso: julio-2005
Mensajes: 746
Antigüedad: 18 años, 9 meses
Puntos: 3
envio de datos formulario a php con jquery

Hola, estoy analizando jquery, he leido bastante sobre el tema, pero hay algo que la verdad no me ha gustado, y es cuando intentamos enviar datos pos desde el formulario a un archivo php, que generalmente lo que hara es guardar los datos.

asi son los campos de mi formulario
Código PHP:

<input name="my_name" type="text" id="pais" value="colombia">
<
input name="ciudad" type="text" id="ciudad" value="bogota">
<
label>     <input name="cat" type="checkbox" id="50" value="50" /> </label>
<
label>      <input name="cat" type="checkbox" id="20" value="20" /> </label>
<
label>      <input name="cat" type="checkbox" id="3" value="3"  /> </label
ok, asi es mi java script...


Código PHP:

                my_array
=document.getElementsByName('my_name');//obtiene un array de objects
                
                
my_new_array=new Array();//obtiene un array con valores de las cajas de texto
                //este for se encarga de llenar el array que se va enviar con valores de las cajas de texto
                
for (i=0;i<my_array.length;i++) {

                    
my_new_array[i]=my_array[i].value;
            
//        alert('name: '+my_new_array[i]);
                
}

                
categori=document.getElementsByName('cat');//obtiene un array de objects
                
                
totalCategori=new Array();//obtiene un array con valores de las cajas de texto
                //este for se encarga de llenar el array que se va enviar con valores de las cajas de texto
                
for (i=0;i<categori.length;i++) {
                    if( 
categori[i].checked ){
                        
totalCategori[i]=categori[i].value;
//                        alert('name: '+totalCategori[i]);
                    
}
                    
                } 

pero esta es la parte que me ha parecido mas critica.....
y de verdad algo des alentadora

Código PHP:


                    
$.ajax({
                            
contentType"application/x-www-form-urlencoded",
                            
beforeSend: function(objeto) {
                            $(
"#Id_Div_Status").innerHTML='Cargando...'; },
                            
type"POST",
                            
url"comprov.php",
                            
data'my_data='+escape(my_new_array)+'&cats='+escape(totalCategori)+'&tags='+escape(totalTags),
                            
success: function(datos){
                                $(
"#aviso").html(datos);
                                },
                            
                    }); 
alo que voy es que esta linea :

data: 'my_data='+escape(my_new_array)+'&cats='+escape(to talCategori)+'&tags='+escape(totalTags),

me envia los datos ami comprov.php, pero me lso envia separados por comas, en el caso de mi script podria ser muy obsoleto ya que si el usuario deposita una coma ( , ) el codigo PHP se dañara.

ha!, asi recivo en mi archivo PHP :

Código PHP:
$datos_formulario explode(",",$_POST['my_data']);
$categorias explode(",",$_POST['cats']);
$tags explode(",",$_POST['tags']); 

Señores POR FAVORRRR, que otras formas podrian haver para enviar mis datos, que no ayan que separarlos por comas....


gracias....
__________________
No hay nada que foros del web no sepa!!!!

Peca tanto quien presume de su belleza como de su inteligencia, ya que la brevedad de la vida aunque distorcionada siempre estara presente.