Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Problema:
Quando eu dou upload na imagem com qualquer nome, ela captura o nome correto da imagem, mas logo após da erros, e eu não consigo arrumar, alguem pode dar uma olhadinha?
Segue abaixo o erro, e o código usado.
Para maiores duvidas, podem acessar o link http://xurisso.amserver1.com/piloto
Se cadastrar e clicar em conta, lá em baixo vai ter a opcao da troca de avatar
Erro:
Nome da imagem capturada: 0000.jpg
Strict Standards: Only variables should be passed by reference in C:\htdocs\AptanaStudio3\Feudal2\codado\alterar_avatar.php on line 26
Strict Standards: Only variables should be passed by reference in C:\htdocs\AptanaStudio3\Feudal2\codado\alterar_avatar.php on line 26
Notice: Array to string conversion in C:\htdocs\AptanaStudio3\Feudal2\codado\alterar_avatar.php on line 30
Nome sem extenção: Array
Nome da imagem: AVTR1021027.jpg
Linha 26: if( $i != end( array_keys( $nameArray ) ) ){
**Linha 30: **echo "</br>Nome sem extenção: $nameWithoutExtension";
Código
/ Inicio do codigo de Escolha do Avatar /
$dir_avatar='avatars/';
$_code=$id_usuario . date("mds");
$uploaddir = $dir_avatar;
$nome_da_imagem = $_FILES['img_avatar']['name'];
echo "</br>Nome da imagem capturada: $nome_da_imagem";
if ($nome_da_imagem == null) {
$_SESSION['alerts']=4;
header("Location: ../main.php?op=conta");$nameArray = explode( '.', $nome_da_imagem );
$extension = end( $nameArray );
for( $i = 0; $i < count( $nameArray ); $i++ ){
if( $i != end( array_keys( $nameArray ) ) ){
$nameWithoutExtension[] = $nameArray[ $i ];
}
}
echo "</br>Nome sem extenção: $nameWithoutExtension";
if (($extension!="jpg")&&($extension!="jpeg")){
$_SESSION['alerts']=5;
header("Location: ../main.php?op=conta");
}else{
$sql = $conexao->query("SELECT avatar FROM usuarios WHERE id='$id_usuario'");
while($linha = $sql->fetch_array()) {
$foto_apagar=$linha['avatar'];
if (($foto_apagar!="profile-feminino.png")&&($foto_apagar!="profile-masculino.png")&&($foto_apagar!="padrao.png")){
unlink("$uploaddir" . "$foto_apagar");
echo "</br>Foto apagada: $uploaddir $foto_apagar";
}
}
$nome_da_imagem = 'AVTR' . $_code . '.' . $extension;
echo "</br>Nome da imagem: $nome_da_imagem";
$uploadfile = $uploaddir . $nome_da_imagem;
$cccc=$_FILES['img_avatar']['name'];
if (move_uploaded_file($_FILES['img_avatar']['tmp_name'],$uploadfile)){
echo "</br>A imagem foi movida para $uploadfile";
$sql = $conexao->prepare("UPDATE usuarios SET avatar = ? WHERE id = ?");
$sql->bind_param('si',$nome_da_imagem,$id_usuario);
$sql->execute();
echo "</br>Imagem adicionada ao banco de dados com o nome: $nome_da_imagem";
header("Location: ../main.php?op=conta");
}
}
}
De jeito nenhum ele executa esta parte do codigo:
Que é o importante
if (move_uploaded_file($_FILES['img_avatar']['tmp_name'],$uploadfile)){
echo "</br>A imagem foi movida para $uploadfile";
$sql = $conexao->prepare("UPDATE usuarios SET avatar = ? WHERE id = ?");
$sql->bind_param('si',$nome_da_imagem,$id_usuario);
$sql->execute();
echo "</br>Imagem adicionada ao banco de dados com o nome: $nome_da_imagem";
header("Location: ../main.php?op=conta");
EDITADO
Consegui fazer funcionar, recriei a pasta e dei permissao nela por que a pasta tava com permissao bugada, mas os erros la em cima continuam e nao consigo resolver
Strict Standards: Only variables should be passed by reference in C:\htdocs\AptanaStudio3\Feudal2\codado\alterar_avatar.php on line 26
Strict Standards: Only variables should be passed by reference in C:\htdocs\AptanaStudio3\Feudal2\codado\alterar_avatar.php on line 26
Carregando comentários...