dongtuo4132 2015-11-25 00:44
浏览 19

Mysqli没有更新

I'm trying to update the database after select a few options and submit (using isset). The page display some information after a database query, and then I have to update the database according to the selected option. If I run exactly the same query that is inside the function "actualizarEstado" but on a third page, then it works. What am I doing wrong? I can't understand. Tried to kill and close the first connection, but I get the same results. Thanks in advice!

<?php

include '00-conexion.php';

$data = extract($_GET);

$sql = "SELECT * FROM inscripciones WHERE nroInscripcion = $sel";

$retval = mysqli_query($conexion, $sql);
$fila = mysqli_fetch_array($retval);


if(isset($_POST['ejecutar'])){
    actualizarEstado($sel);
}

function actualizarEstado($sel){
    $estado =  $_POST['estado'];

    $sql2 = "UPDATE inscripciones SET revision1='',
        revision2='',
        revision3='',
        revision4='',
        revision5='',
        revision6='',
        revision7='',
        revision8='',
        revision9='',
        estado='$estado'
        WHERE nroInscripcion = $sel";

    if (!mysqli_query($conexion, $sql2)) {
        die('Error: ' . mysqli_error($conexion));
    }
}

?>

<form method="post" action="">
        <tr><td><select name="estado" from="estado">
            <option value="aceptado">Aceptar</option>
            <option value="rechazado">Rechazar</option>
            <option value="revision">En revision</option>
        </tr/></td>
        <tr><td><input type="submit" value="Actualizar" name="ejecutar" onclick="return confirm('¿Estás seguro que deseas?')" /></tr></td>
</form>
  • 写回答

1条回答 默认 最新

  • dpf56454 2015-11-25 00:55
    关注

    I think you have to pass the $connexion variable through the function!

    Make it something like this:

    function actualizarEstado($myConnection,$sel){
        $estado =  $_POST['estado'];
    
        $sql2 = "UPDATE inscripciones SET revision1='',
        revision2='',
        revision3='',
        revision4='',
        revision5='',
        revision6='',
        revision7='',
        revision8='',
        revision9='',
        estado='$estado'
        WHERE nroInscripcion = $sel";
    
        if (!mysqli_query($myConnection, $sql2)) {
            die('Error: ' . mysqli_error($myConnection));
        }
    }
    

    and call the function like: actualizarEstado($connexion,$sel);

    评论

报告相同问题?

悬赏问题

  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用