Caballeros, buenas tardes, estoy tratando de validar si un usuario existe en la base antes de insertarlo.
Pero no eh dado con el codigo correcto.
Código SQL:
Ver originalPROCEDURE P_VALIDAUSER ( PO_EXISTE OUT NUMBER,
PI_USRSYS_ALIAS IN VARCHAR2,
PO_SW OUT NUMBER,
PO_TEXTERR OUT VARCHAR2)IS
vl_valor NUMBER;
BEGIN
BEGIN
--OPEN PO_VALIDAUSER FOR
-- VALIDA ID Usuarios del sistema
SELECT COUNT(*)
INTO vl_valor
FROM TCARVIG_USRSYS
WHERE USRSYS_ID = "PI_USRSYS_ALIAS";
IF vl_valor > 0 THEN --el registro existe
PO_EXISTE:= 1;
END IF;
END;
END;
Código PHP:
$sql="BEGIN pk_carvig_user.p_validauser('".$idf_usuario."'"
.",:po_existe); END;";
$stmt = OCIParse($conexion->conecta,$sql);
OCIBindByName($stmt,":po_existe",$po_existe,256);
ociexecute($stmt);
ociexecute($po_existe);
if($po_existe == '1'){
echo "esta duplicado";
Me arroja este errror
Cita: Warning: ociexecute() [function.ociexecute]: ORA-06550: línea 1, columna 7: PLS-00306: número o tipos de argumentos erróneos al llamar a 'P_VALIDAUSER' ORA-06550: línea 1, columna 7: PL/SQL: Statement ignored in C:\AppServ\www\registro\registro.php on line 237
Warning: ociexecute() expects parameter 1 to be resource, null given in C:\AppServ\www\registro\registro.php on line 238
Alguien?