Hola,
he conseguido que mi aplicación me muestre solo los E_NOTICES de aquello que yo he programado.
Ya he eliminado casi todos, pero faltan unos cuantos que no sé como hacer de la manera más correcta posible.
Voy a irlos poniendo poco a poco a ver si se le puede encontrar una buena forma de eliminarlos:
Código:
Notice: Undefined index: email in c:\appserv\www\emycms-0.4.0\includes\carrito.inc.php on line 4
Notice: Undefined index: name in c:\appserv\www\emycms-0.4.0\includes\carrito.inc.php on line 6
Notice: Undefined index: lastname in c:\appserv\www\emycms-0.4.0\includes\carrito.inc.php on line 7
.., etc etc,
Eso son los E_NOTICES.
- Este es el código de un formulario (de pedido) sin rellenar.
- Cuando se rellena no se generan los E_NOTICES. Los campos
se guardan en cookies.
- Si el usuario decide seguir comprando antes de confirmar el pedido
se le recuerdan los campos, que son recuperados de las cookies.
- El código funciona correctamente. Pero genera esos E_NOTICES
A continuación el código PHP:
Código PHP:
<?php
$email=$_COOKIE['email'];
$order_id=$_COOKIE['ref']; //Identificador de pedido.
$name=fn_comillas_inteligentes ($_COOKIE['name']);
$lastname=fn_comillas_inteligentes ($_COOKIE['lastname']);
$address=fn_comillas_inteligentes ($_COOKIE['address']);
$cp=fn_comillas_inteligentes ($_COOKIE['cp']);
$city=fn_comillas_inteligentes ($_COOKIE['city']);
$province=fn_comillas_inteligentes ($_COOKIE['province']);
$country=fn_comillas_inteligentes ($_COOKIE['country']);
$phone=fn_comillas_inteligentes ($_COOKIE['phone']);
$nif=fn_comillas_inteligentes ($_COOKIE['nif']);
$ename=fn_comillas_inteligentes ($_COOKIE['ename']);
$elastname=fn_comillas_inteligentes ($_COOKIE['elastname']);
$eaddress=fn_comillas_inteligentes ($_COOKIE['eaddress']);
$ecp=fn_comillas_inteligentes ($_COOKIE['ecp']);
$ecity=fn_comillas_inteligentes ($_COOKIE['ecity']);
$eprovince=fn_comillas_inteligentes ($_COOKIE['eprovince']);
$ecountry=fn_comillas_inteligentes ($_COOKIE['ecountry']);
$ephone=fn_comillas_inteligentes ($_COOKIE['ephone']);
$enif=fn_comillas_inteligentes ($_COOKIE['enif']);
$observacion_cliente=fn_comillas_inteligentes ($_COOKIE['customer_observation']);
?>
La única solución que veo es:
Código PHP:
if (isset ($_COOKIE['name')) && isset ($_COOKIE['lastname') &&
isset ($_COOKIE['address']), etc )
Pero me pregunto si hay otra solución mejor, quiero evitar pasar cada variable
por la función isset, ya que dicho código es adaptable según necesidades de cada cliente, y tendría que estar continuamente escribiendo los isset si se le añaden o eliminan campos al formulario.
Gracias.