Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法编辑整数_Php_Mysql_Int - Fatal编程技术网

Php 无法编辑整数

Php 无法编辑整数,php,mysql,int,Php,Mysql,Int,我正在用PHP构建一个管理面板。我是PHP新手,我无法让我的编辑页面按我需要的方式工作。我可以编辑名称,但表示“活动用户”和“访问级别”的2个值被设置为0,我无法在编辑页面上从0更改它,只能从PhpmyAdmin更改 <?php // Inserir o registo na BD include_once ('config1.php'); // Estabelecer a ligação à BD $connection = new mysqli('localhost', 'root'

我正在用PHP构建一个管理面板。我是PHP新手,我无法让我的编辑页面按我需要的方式工作。我可以编辑名称,但表示“活动用户”和“访问级别”的2个值被设置为0,我无法在编辑页面上从0更改它,只能从PhpmyAdmin更改

<?php
// Inserir o registo na BD
include_once ('config1.php');

// Estabelecer a ligação à BD
$connection = new mysqli('localhost', 'root', '123456', 'admin1');

//Verificar se a ligação foi estabelecida com sucesso
if (mysqli_connect_errno() ) {
    echo "</h2>Erro no acesso a BD</h2>" . mysqli_connect_error(); 

    exit();
    }
    // Validar se os campos do formulário foram preenchidos pelo utilizador
    // Verificar se "username" foi enviado
    if (isset($_POST['iusername']) == FALSE) {
        echo ("Erro de submissão");
        exit();
    } else {
        $username = trim($_POST['iusername']);
    }
    if (isset($_POST['inome']) == FALSE) {
        echo ("Erro de submissão");
        exit();
    } else {
        $nome = trim($_POST['inome']);
    }
    if (isset($_POST['inivel']) == FALSE) {
        echo ("Erro de submissão");
        exit();
    } else {
        $apelido = trim($_POST['inivel']);
    }
    if (isset($_POST['iativo']) == FALSE) {
        echo ("Erro de submissão");
        exit();
    } else {
        $telefone = trim($_POST['iativo']);
    }
    if (isset($_POST['iemail']) == FALSE) {
        echo ("Erro de submissão");
        exit();
    } else {
    $email = trim($_POST['iemail']);
    }
    if (isset($_POST['ipass']) == FALSE) {
    echo ("Erro de submissão");
    exit();
    } else {
    $pass = trim($_POST['ipass']);
    }
    if (isset($_POST['irpass']) == FALSE) {
    echo ("Erro de submissão");
    exit();
    } else {
    $repass = trim($_POST['irpass']);
    }

    // Função de validação do email (chamada mais abaixo no código)
    function isValidEmail($email){
    return @eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]                                {2,3})", $email);

    // Validar se o nº de caracteres do "username" está entre 4 e 12
    if (strlen($username) < 4 || strlen($username) > 12) {
    $erro = true;
    $msgerro .= "<p>erro: \"username\" deve conter entre 4 e 12 caracteres</p>";
    }
    // Validar se o nome tem entre 3 e 40 caracteres
    if (strlen($nome) < 3 || strlen($nome) > 40) {
    //echo (strlen($nome));
    $erro = true;
    $msgerro .= "<p>erro: \"nome\" deve conter entre 3 a 40 caracteres</p>";
    }

// Validação das passwords
$mudapass = false;
    if (strlen($password) == 0 && strlen($rpassword) == 0) {
    $mudapass = false;
} else {
    $mudapass = true;
}
    // 2.2. Validar o tamanho da password
    if (strlen($password) < 4 || strlen($password)> 16) {
    $erro = true;
    $msgerro .= "<p>erro: \"password\" deve conter entre 4 a 16 caracteres</p>";
    }
    }
    // 3. Validar se as duas passwords correspondem
    if ($password != $rpassword) {
    $erro = true;
    $msgerro .= "<p>\"passwords\" não correspondem</p>";
    }

    // validação de email
    // Chama a nova função "isValidEmail"
    if (isValidEmail($email) == false) {
    $erro = true;
    $msgerro .= "<p>email inválido</p>";
    } 
     // Final das validações (avisa caso algum erro seja detectado)
    if ($erro) {
    echo "<p>Formulário submetido com erros</p>";
    echo $msgerro;
    echo "<br>";
    // Desenha 2 botões "Corrigir" e "Listar"
    echo "<a class='ains' href='javascript:history.go(-1)' title='Volta à página         anterior'>Corrigir </a>";
    echo "<br/>";
    echo "<a class='ains' href='lista.php'>Listar</a>";
    exit();
    }
    if($password != $rpassword){
echo "ERRO: PASSWORDS SAO DIFERENTES";
    }


    $sql= "UPDATE usuarios SET
        nome = '$nome';
        email = '$email';
        nivel = '$nivel';
        ativo = '$ativo';
        WHERE
        usuario = '$username'";

    if ($mudapass == TRUE) {
    $sql = "UPDATE usuarios SET nome = '$nome', 
    password = '$password', 
    email = '$email',
    nivel = '$nivel', 
    ativo = '$ativo', WHERE usuario = '$username'";
    }
    if ($mudapass == FALSE) {
    $sql = "UPDATE usuarios SET
    nome = '$nome',
    email = '$email',
    nivel = '$nivel',
    ativo = '$ativo'
    WHERE
    usuario = '$username'";
    }
    $connection->query($sql);
    // Lista users depois de actualizar
    header("location:lista.php");

    ?>

看起来像是命名问题。您的两个变量似乎不像其他变量那样遵循相同的约定,除非我在查询之前错过了一些额外的处理,否则您应该更改这两行:

    $apelido = trim($_POST['inivel']);

    // ...several lines later
    $telefone = trim($_POST['iativo']);
为此:

    $nivel = trim($_POST['inivel']);

    // ...several lines later
    $ativo = trim($_POST['iativo']);

没问题D另外,既然问题已经解决,你可以通过接受答案来承认它。对不起,我不知道接受的系统,完成了,对不起,花了这么长时间!哈哈,别担心!感谢您的接受,祝您好运D