Foros del Web » Programando para Internet » PHP »

NO se ve script en safari

Estas en el tema de NO se ve script en safari en el foro de PHP en Foros del Web. Hola a todos los foreros, vengo a solicitar ayuda para encontrar una soluión tengo este form en un php Código HTML: <form name= "form1" id= ...
  #1 (permalink)  
Antiguo 20/08/2010, 15:54
 
Fecha de Ingreso: julio-2010
Ubicación: La Ciudad Blanca, Mérida-Yucatán
Mensajes: 375
Antigüedad: 13 años, 9 meses
Puntos: 7
NO se ve script en safari

Hola a todos los foreros, vengo a solicitar ayuda para encontrar una soluión

tengo este form en un php

Código HTML:
<form name="form1" id="form1" method="post" action="oper_personal.php" enctype="multipart/form-data"><table width="476" border="0" cellpadding="4" cellspacing="0">
            <tr>
              <td width="11" bgcolor="d9dfc0">&nbsp;</td>
              <td width="89" bgcolor="d9dfc0" class="textnegro">*Nombre:</td>
              <td width="280" bgcolor="d9dfc0" class="textnegro">
              <input type="text" name="nom" id="nom"  />
              </td>
            </tr>
            <tr>
              <td bgcolor="fbfee1">&nbsp;</td>
              <td bgcolor="fbfee1" class="textnegro">*Descripcion:</td>
              <td bgcolor="fbfee1" class="textnegro">
                <input type="text" name="desc" id="desc"  />
              </td>
            </tr>
            <tr>
              <td bgcolor="#D9DFC0">&nbsp;</td>
              <td bgcolor="#D9DFC0" class="textnegro">*Precio:</td>
              <td bgcolor="#D9DFC0" class="textnegro">
                <input type="text" name="pre" id="pre"  onkeypress="return numbersonly(this, event);"  />
              </td>
            </tr>
            <tr>
              <td bgcolor="#FBFEE1">&nbsp;</td>
              <td bgcolor="#FBFEE1" class="textnegro">*Imagen:</td>
              <td bgcolor="#FBFEE1" class="textnegro">
                <input type="file" name="imagen" id="imagen"/>
              </td>
            </tr>
            <tr>
              <td bgcolor="#D9DFC0">&nbsp;</td>
              <td bgcolor="#D9DFC0" class="textnegro">*Categoria:</td>
              <td bgcolor="#D9DFC0" class="textnegro">
                <select name="cat" id="cat">
         <option value="">Elige</option>
         <?php $row = ejecutar("select * from categoria");
	 for($i=0;$i<count($row);$i++){								 									
	echo '<option value="'.$row[$i]['nom_cat'].'">'.$row[$i]['nom_cat'].'</option>';
	}
	 unset($row);								  
	?>							
	</select>
              </td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
              <td align="right"><input type="submit" name="accion2" value="Aceptar" onClick="return Enviar(this.form)" style="background-image:url(images/btnlogin.jpg); border:none;width:77px;height:28px;color:#ffffff;" />
              <input type="submit" name="accion2" value="Cancelar" style="background-image:url(images/btnlogin.jpg); border:none;width:77px;height:28px;color:#ffffff;"/></td>
            </tr>
          </table></form> 
dicho form manda los datos a este otro php donde hago mis rutinas.

Código PHP:
<?php

session_start
();
$idmesa $_SESSION["axon_admin_user"];
include(
"admin/conec.php");


if(
$_POST['accion2'] == "Aceptar" ){
    
    
$pre $_POST['pre'];
    
$rows ejecutar("select precio from personal where idmesa= '$idmesa' ");
    for(
$i=0$i<count($rows); $i++){
    
$suma $suma $rows[$i]['precio'];}
    if(
$suma $pre 40000){
    
header ('location: error_personal.php');
    }
if(
$suma pre <= 4000){
if(
$_FILES['imagen']['name'] != ""){ 
$imagen $_FILES['imagen']['name'];
$archivo_temporal $_FILES['imagen']['tmp_name'];
}
$carpeta "images/productos/";

move_uploaded_file($archivo_temporal,$carpeta.$imagen );

$id rand(000,999);//creamos codigo aleatorio de 3 digitos 
$nom $_POST['nom'];
$desc $_POST['desc'];
//$prov = $_POST['prov'];
$cat $_POST['cat'];
$fech date("Y-m-d h:i:s");
//echo $carpeta.$imagen;


$done ejecutar("insert into productos(idprod,nombre_prod,descripcion_prod,precio,proveedor, imagen,categoria,fecha_alta,idmesa) values ( '$id','$nom','$desc','$pre','', '$imagen', '$cat', '$fech', '$idmesa' )") or die(mysql_error());
$do ejecutar("insert into personal(idmesa,idprod,nombre_prod,desc_prod,precio,tienda,imagen,categoria,fecha) values ('$idmesa','$id','$nom','$desc','$pre','$prov', '$imagen', '$cat', '$fech' )") or die(mysql_error());
$haz ejecutar("insert into productos_evento(idprod,idmesa,cantidad,actual,comp) values ('$id', '$idmesa', 1, 0, 0)") or die(mysql_error());
header ("location: admin_selec.php?cat=todos&fst=1");
}


}


if(
$_POST['accion2'] == "Cancelar" )
{
header ('location: admin_selec.php?cat=todos&fst=1');

}

?>
Bueno el caso es que en firefox e IE funciona perfectamente pero en safari al hacer click en Aceptar me manda a la pagina de operaciones que se llama oper pero ai se queda en blanco no ejecuta las rutinas para nada, pero Cancelar que es otro submit si hace lo que debe.

Alguien me podría decir el porq??
Gracias de antemano
  #2 (permalink)  
Antiguo 20/08/2010, 16:17
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: NO se ve script en safari

has esto. var_dump($_POST['accion2']); y ve que te devuelve, no estoy seguro, pero puede ser que safari o no envíe en el post las variables correspondientes al input submit, o las devuelva en minúsculas, o devuelva un array("Aceptar","Cancelar"), pero es allí donde puede estar el fallo, por eso evito validar con los input submit
  #3 (permalink)  
Antiguo 20/08/2010, 18:24
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: NO se ve script en safari

creo que tendrías que postear el codigo html, poruque el php, no tiene nada que ver con el navegador

EDITO: perdon no lo había visto
__________________
la la la
  #4 (permalink)  
Antiguo 23/08/2010, 08:21
 
Fecha de Ingreso: julio-2010
Ubicación: La Ciudad Blanca, Mérida-Yucatán
Mensajes: 375
Antigüedad: 13 años, 9 meses
Puntos: 7
Respuesta: NO se ve script en safari

hola, perdón por tardar en responder, esto es lo que me muestra al hacer var_dump a $_POST['accion2']:

Código HTML:
string(7) "Aceptar"
he de agregar que a la pagina donde está el formulario agregue una validación en javascript y el safari permitía que el submit cancelar hiciera su función, osea redireccionar a una pagina de error esta es la validación javascript que hize:

Código HTML:
var sut = parseFloat(document.form.pre.value) + parseFloat(<?php echo $tott; ?>);
if( sut > 40000){
return false;
}
pero me interesaria poder hacer que se ejecute el submit aceptar ya que es la página que tiene la funcionalidad para el form

gracias de antemano
  #5 (permalink)  
Antiguo 23/08/2010, 12:10
 
Fecha de Ingreso: julio-2010
Ubicación: La Ciudad Blanca, Mérida-Yucatán
Mensajes: 375
Antigüedad: 13 años, 9 meses
Puntos: 7
Respuesta: NO se ve script en safari

Hola de nuevo he modificado mi form html y mi script php pero sigue sin funcionar en safari, he aqui mis cambios:

Código HTML:
<form name="form" id="form" method="post" action="oper_personal.php" enctype="multipart/form-data"><table width="476" border="0" cellpadding="4" cellspacing="0">      
            <tr>
              <td width="11" bgcolor="d9dfc0">&nbsp;</td>
              <td width="89" bgcolor="d9dfc0" class="textnegro">*Nombre:</td>
              <td width="280" bgcolor="d9dfc0" class="textnegro">
              <input type="text" name="nom" id="nom"  />
              </td>
            </tr>
            <tr>
              <td bgcolor="fbfee1">&nbsp;</td>
              <td bgcolor="fbfee1" class="textnegro">*Descripcion:</td>
              <td bgcolor="fbfee1" class="textnegro">
                <input type="text" name="desc" id="desc"  />
              </td>
            </tr>
            <tr>
              <td bgcolor="#D9DFC0">&nbsp;</td>
              <td bgcolor="#D9DFC0" class="textnegro">*Precio:</td>
              <td bgcolor="#D9DFC0" class="textnegro">
                <input type="text" name="pre" id="pre"  onkeypress="return numbersonly(this, event);"  />
              </td>
            </tr>
            <tr>
              <td bgcolor="#FBFEE1">&nbsp;</td>
              <td bgcolor="#FBFEE1" class="textnegro">*Imagen:</td>
              <td bgcolor="#FBFEE1" class="textnegro">
                <input type="file" name="imagen" id="imagen"/>
              </td>
            </tr>
            <tr>
              <td bgcolor="#D9DFC0">&nbsp;</td>
              <td bgcolor="#D9DFC0" class="textnegro">*Categoria:</td>
              <td bgcolor="#D9DFC0" class="textnegro">
                <select name="cat" id="cat">
         <option value="">Elige</option>
         <?php $row = ejecutar("select * from categoria");
	 for($i=0;$i<count($row);$i++){								 									
	echo '<option value="'.$row[$i]['nom_cat'].'">'.$row[$i]['nom_cat'].'</option>';
	}
	 unset($row);								  
	?>							
	</select>
              </td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
              <td align="right">
              <input type="submit" name="accion2" value="Aceptar" onclick="return Enviar(this.form)" style="background-image:url(images/btnlogin.jpg); border:none;width:77px;height:28px;color:#ffffff;"/></td>
            </tr>
          </table></form><?php } ?> 
y mi script php

Código PHP:
Ver original
  1. if($_POST['accion2']){
  2. $pre = $_POST['pre'];
  3. $rows = ejecutar("select precio from personal where idmesa= '$idmesa' ");
  4.    
  5.     for($i=0; $i<count($rows); $i++){
  6.     $suma = $suma + $rows[$i]['precio'];
  7.     }
  8. if($suma + $pre <= 40000){
  9. if ($_FILES['imagen']['name'] != ""){
  10. $imagen = $_FILES['imagen']['name'];
  11. $archivo_temporal = $_FILES['imagen']['tmp_name'];
  12. }
  13. $carpeta = "images/productos/";
  14.    
  15. move_uploaded_file($archivo_temporal,$carpeta.$imagen );
  16.  
  17. $id = rand(000,999);//creamos codigo aleatorio de 3 digitos
  18. $nom = $_POST['nom'];
  19. $desc = $_POST['desc'];
  20. $cat = $_POST['cat'];
  21. $fech = date("Y-m-d h:i:s");
  22.  
  23. $haz = ejecutar("insert into productos_evento(idprod,idmesa,cantidad,actual,comp) values ('$id', '$idmesa', 1, 0, 0)");
  24. $do = ejecutar("insert into personal(idmesa,idprod,nombre_prod,desc_prod,precio,tienda,imagen,categoria,fecha) values ('$idmesa','$id','$nom','$desc','$pre', '', '$imagen', '$cat', '$fech' )");
  25. $done = ejecutar("insert into productos(idprod,nombre_prod,descripcion_prod,precio,proveedor, imagen,categoria,fecha_alta,idmesa) values ( '$id','$nom','$desc','$pre','', '$imagen', '$cat', '$fech', '$idmesa' )");
  26.  
  27.  
  28. header ('location: admin_selec.php?cat=todos&fst=1');
  29.  
  30. }
  31. if($suma + $pre > 40000){
  32.     header ('location: error_personal.php');
  33.     }
  34.  
  35. }

cuando le ago el var_dump a $_POST['accion2'] me muestra:
NULL
que podrá ser?, de verdad que no le encuentro porque en Firefox e IE funciona bien.
  #6 (permalink)  
Antiguo 23/08/2010, 14:22
 
Fecha de Ingreso: julio-2010
Ubicación: La Ciudad Blanca, Mérida-Yucatán
Mensajes: 375
Antigüedad: 13 años, 9 meses
Puntos: 7
Respuesta: NO se ve script en safari

hola de nuevo aqui insistiendo alguien me pueda decir porque sucede esto con mi script en el safari ya que como les comente en Firefox e IE me funciona correctamente, les agradeciría que me indicaraán el porque y la posible solución,
ya que he estado viendo y probando mi código y ya no se que hacer

gracias de antemano
  #7 (permalink)  
Antiguo 24/08/2010, 09:54
 
Fecha de Ingreso: julio-2010
Ubicación: La Ciudad Blanca, Mérida-Yucatán
Mensajes: 375
Antigüedad: 13 años, 9 meses
Puntos: 7
Respuesta: NO se ve script en safari

Bueno solo para comentar a quien le interese
he solucionado el problema y de nuevo no fue mi programación, como saben todos o casi todos los exploradores son quisquillos es muchos aspectos y esta no fue la excepción.
En fin la solución fue:

<input type="submit" name="accion2" value="Aceptar" onclick="return Enviar(this.form)" style="background-image:url(images/btnlogin.jpg); border:none;width:77px;height:28px;color:#ffffff;"/>

cambiar lo subrayado y ponerlo en la etiqueta del form y listo funciona como debe.

Código HTML:
<form name="form" id="form" method="post" action="oper_personal.php" onsubmit="return Enviar(this.form)" enctype="multipart/form-data" > 
creo que no soy el unico al que le ha pasado este tipo de cosas que el explorador es el problema y no el codigo jajajaja

Etiquetas: safari
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 21:24.