$lugar = $_POST['lugar_evento']; $ciudad = intval($_POST['combo_CIUDAD']); $to = strtotime($_POST['fecha_evento']); $fecha = date('d/m/y', strtotime($_POST['fecha_evento'])); $hora = $_POST['hora_evento']; $descripcion = $_POST['descripcion']; $result = $_POST['taskOption']; $result_explode = explode('|', $result); // Insertar Datos $query = OCI_Parse($c, "insert into EVENTO (EVENTO_ID,NOMBRE, LUGAR, DESCRIPCION, FECHA, HORA) values (incremento_evento.nextval, :para2, :para3, :para4, :para5, :para6)"); OCI_Bind_By_Name($query, ":para2", $titulo); //Ligar los parámetros oracle con variables de PHP OCI_Bind_By_Name($query, ":para3", $lugar); OCI_Bind_By_Name($query, ":para4", $descripcion); OCI_Bind_By_Name($query, ":para5", $fecha); OCI_Bind_By_Name($query, ":para6", $hora); //Ejecutar la sentencia para insertar $r = OCI_Execute($query); OCI_Free_Statement($query); //Liberar sentencia echo $selectOption; echo "<br>"; echo $to; echo gettype($to); echo gettype($titulo); echo "<br>"; echo gettype($lugar); echo "<br>"; echo $ciudad; echo gettype($ciudad); echo "<br>";
/** * Exécution d'une requête de base de données en utilisant * * @param string $pQueryString la requête à exécuter * @param string $pParameters les paramètres à donner à la requête * @param int $pOffset la ligne à partir de laquelle on veut récupérer les donénes * @param int $pCount le nombre d'enregistrements que l'on souhaite récupérer à partir de l'offset * @return array */ private function _doQuery($pQueryString, $pParams = array(), $pOffset = null, $pCount = null) { $resultsOfQueryParsing = $this->_parseQuery($pQueryString, $pParams, $pOffset, $pCount); $pQueryString = $resultsOfQueryParsing['query']; //Préparation de la requête $stmt = ociparse($this->_ct, $pQueryString); if ($stmt === false) { throw new CopixDBException($pQueryString); } //On analyse les paramètres $arVariablesName = array(); $arVariables = array(); foreach ($pParams as $name => $param) { $variableName = substr($name, 1); if (!is_array($param)) { ${$variableName} = $param; if (!OCI_Bind_By_Name($stmt, $name, ${$variableName}, -1)) { throw new CopixDBException("Bind ['{$name}'] - [" . ${$variableName} . "] taille [" . $arVariables[$variableName]['maxlength'] . "] type [" . $this->_convertQueryParam($arVariables[$variableName]['type']) . "]"); } $arVariables[$variableName]['type'] = $this->_defaultBindType; $arVariables[$variableName]['value'] = $param; // $arVariables[$variableName]['type'] = 'AUTO'; // $arVariables[$variableName]['value'] = $param; } else { if (!isset(${$variableName})) { ${$variableName} = isset($param['value']) ? $param['value'] : null; } $arVariables[$variableName] = $param; if (!isset($arVariables[$variableName]['type'])) { $arVariables[$variableName]['type'] = $this->_defaultBindType; } if (!isset($arVariables[$variableName]['maxlength'])) { $arVariables[$variableName]['maxlength'] = $this->_defaultBindLength; } // if (! isset ($arVariables[$variableName]['type'])){ // $arVariables[$variableName]['type'] = CopixDBQueryParam::DB_AUTO; // } // if (! isset ($arVariables[$variableName]['maxlength'])){ // $arVariables[$variableName]['maxlength'] = -1; // } if ($arVariables[$variableName]['type'] === CopixDBQueryParam::DB_CURSOR) { ${$variableName} = oci_new_cursor($this->_ct); } if (!OCI_Bind_By_Name($stmt, $name, ${$variableName}, $arVariables[$variableName]['maxlength'], $this->_convertQueryParam($arVariables[$variableName]['type']))) { oci_free_statement($stmt); throw new CopixDBException("Bind ['{$name}'] - [" . ${$variableName} . "] taille [" . $arVariables[$variableName]['maxlength'] . "] type [" . $this->_convertQueryParam($arVariables[$variableName]['type']) . "]"); } } } //on exécute la requête if (!oci_execute($stmt, OCI_DEFAULT)) { $statementErrors = oci_error($stmt); oci_free_statement($stmt); throw new CopixDBException($pQueryString . ' - ' . var_export($statementErrors, true) . ' - ' . var_export($arVariables, true)); } //Mise à jour des champs de type lob foreach ($arVariables as $name => $value) { //Si c'est un curseur if ($value['type'] === CopixDBQueryParam::DB_LOB || $value['type'] === CopixDBQueryParam::DB_BLOB || $value['type'] === CopixDBQueryParam::DB_CLOB) { ${$name}->save($value); } } //retourne les résultats. if ($resultsOfQueryParsing['isSelect']) { $results = array(); while ($o = oci_fetch_array($stmt, OCI_ASSOC + OCI_RETURN_LOBS + OCI_RETURN_NULLS)) { $results[] = $this->_getCases($o, $pQueryString); } } else { $results = oci_num_rows($stmt); } //On commit si le mode est autocommit if ($this->_autoCommitMode == self::OCI_AUTO_COMMIT) { $this->commit(); } //Libération des lobs foreach ($arVariables as $name => $value) { //Si c'est un curseur if ($value['type'] === CopixDBQueryParam::DB_LOB || $value['type'] === CopixDBQueryParam::DB_BLOB || $value['type'] === CopixDBQueryParam::DB_CLOB) { oci_free_descriptor(${$name}); } } oci_free_statement($stmt); return $results; }