3
I tried to apply the instructions to upload photos to the bank with this article.
I just adapted to the Mysqli extension. The connection code below:
$conecta = new MySQLi = ("localhost", "root", "", "forum-ti-1");
However, the errors shown in the figure below:
Undefined variable error in ... line 32
Array to string Conversion in ... line 38
Undefined variable error in ... line 45
Below is the code:
<?php
include_once('conexao/conexao.php');
if(($_SERVER["REQUEST_METHOD"] == "POST") and ($_POST["editar"])){
$foto = $_FILES['foto'];
$nome = $_POST['nome'];
$login = $_POST['login'];
$email = $_POST['email'];
$senha = $_POST['senha'];
$data_nascimento = $_POST['data_nascimento'];
if(!empty($foto["name"])){
$largura = 1600;
$altura = 1900;
$tamanho = 500000;
if(!preg_match("/^image\/(pjpeg|jpeg|png|gif|bmp)$/", $foto["type"])){
$error[1] = "Isso não é uma imagem.";
}
$dimensoes = getimagesize($foto["tmp_name"]);
if($dimensoes[0] > $largura) {
$error[2] = "A largura da imagem não deve ultrapassar ".$largura." pixels";
}
if($dimensoes[1] > $altura) {
$error[3] = "Altura da imagem não deve ultrapassar ".$altura." pixels";
}
if($foto["size"] > $tamanho) {
$error[4] = "A imagem deve ter no máximo ".$tamanho." bytes";
}
//Linha 32
if (count($error) == 0) {
preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);
$nome_imagem = md5(uniqid(time())) . "." . $ext[1];
$caminho_imagem = "photos/" . $nome_imagem;
move_uploaded_file($foto["tmp_name"], $caminho_imagem);
//Linha 38
$sql = $conecta->query("UPTADE usuario SET usuario.foto = '$foto', usuario.nome = '$nome', usuario.login = '$login', usuario.senha = '$senha', usuario.data_nascimento = '$data_nascimento' WHERE usuario.id = 4");
if ($sql){
header('location: index.php');
}
}
//Linha 45
if (count($error) != 0) {
foreach ($error as $erro) {
echo $erro . "<br />";
}
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link rel="stylesheet" href="css/style.css">
<script src="js/script.js"></script>
</head>
<body>
<?php
include('templates/header.html.php');
?>
<?php
$query_perfil = "SELECT nome, login, email, senha FROM usuario WHERE id = 4";
$rs_perfil = $conecta->query($query_perfil);
while($lista_perfil = $rs_perfil->fetch_array()){
?>
<form class="form_profile_user" action="<?php echo $_SERVER['PHP_SELF'] ?>" enctype="multipart/form-data" method="post" style="margin-top: 130px; margin-left: 330px;">
<h3>Alterar o Perfil</h3>
<label>Foto</label><br>
<input type="file" name="foto"><br><br>
<label>Nome:</label>
<input type="text" name="nome" value="<?php echo $lista_perfil['nome']; ?>"><br><br>
<label>Login:</label>
<input type="text" name="login" value="<?php echo $lista_perfil['login']; ?>"><br><br>
<label>Email:</label>
<input type="email" name="email" value="<?php echo $lista_perfil['email']; ?>"><br><br>
<label>Senha:</label>
<input type="password" name="senha" value="<?php echo $lista_perfil['senha']; ?>"><br><br>
<label>Data de Nascimento:</label>
<input type="date" name="data_nascimento"><br><br>
<input type="submit" value="Confirmar" name="editar">
<input type="submit" value="Cancelar" name="cancelar">
</form>
<?php
}
?>
<?php
include('templates/footer.html.php');
?>
</body>
</html>
And below is the form:
//Linha 32
if (count($error) == 0) {
//Linha 38
$sql = $conecta->query("UPTADE usuario SET usuario.foto = '$foto', usuario.nome = '$nome', usuario.login = '$login', usuario.senha = '$senha', usuario.data_nascimento = '$data_nascimento' WHERE usuario.id = 4");
//Linha 45
if (count($error) != 0) {
Please indicate lines 32, 38 and 45
– rray