Crea las variables vacias antes de usarlas luego para los parametros llamando a la varibles si no estan vacias.... ademas en tu codigo hay () de mas ....y amen de que no es nada seguro si las variables seran enviadas por un formulario al que tendran acceso desde internet...
mira aqui te post un ejemplo rapido de como se podria hacer o de como lo haria yo
Código PHP:
<?php if (!isset($_SESSION)) { @session_start(); }
error_reporting(0);
function quitaMe($mensaje)
{
$nopermitidos = array("_","-","·","´","'",'\\','<','>',"\"",";","´","`","*","%","&","=","?","|","+","#","^");
$mensaje = str_replace($nopermitidos,"", $mensaje);
return $mensaje;
}
$_SESSION['cod_prod']=quitaMe("");
$_SESSION['cant_prod']=quitaMe("");
$cod_prod=htmlentities($_POST['cod_producto'],ENT_QUOTES);
$cant_prod=htmlentities($_POST['cant_producto'],ENT_QUOTES);
///la info que tendra codi prod
$numerico="/^[0-9]{1,5}$/";
if (isset($_POST['nombre_del boton enviar del formularo o id formulario'])){
if(!empty($cod_prod)){
$cod_prod=quitaMe($cod_prod);
if (!preg_match($numerico, $cod_prod))
{
$error= "datos no validos!";
exit();
}else{
$_SESSION['cod_prod']=$cod_prod;
}
}
if(empty($error)and !empty ($_SESSION['cod_prod']){
header("Location: index.php");
}
?>
pues asi es mas seguro
ademas las funciones :
session_register
session_is_registered
son obsoletas!! desde PHP 5.3.0. Su uso está totalmente desaconsejado. saludos!!