Сделал простую форму регистрации, авторизации. Нужно что бы в форме регистрации пользователь мог установить свой аватар. Сделал методом из интернета:
$myimg = './uploads/' . basename($_FILES['picture']['name']);
if (move_uploaded_file($_FILES['picture']['tmp_name'], $myimg)) {
}
Не помогает. В баз данных картинка сохраняется, но в папке проекта изображение не появляется.
Использовал плагин redbean php для более удобной работы с базой данных.
Вот полный код формы регистрации:
<link rel="stylesheet" href="css/style.css" />
<?php
require "db.php";
$data = $_POST;
if(isset($data['do_signup'])) {
//Здесь регаем
$errors = array();
if(trim($data['name']) == '' ) {
$errors[] = 'Введите имя!';
}
if(trim($data['surename']) == '' ) {
$errors[] = 'Введите Фамилию!';
}
if(trim($data['email']) == '' ) {
$errors[] = 'Введите email!';
}
if(trim($data['phone']) == '' ) {
$errors[] = 'Введите номер телефона!';
}
if($data['password'] == '' ) {
$errors[] = 'Введите пароль';
}
if($data['confirm'] !== $data['password'] ) {
$errors[] = 'Пароли не совпадают';
}
if(R::count('users', "email = ?", array($data['email'])) > 0) {
$errors[] = 'Этот email уже существет';
}
if (empty($errors)) {
//all is good
$user = R::dispense('users');
$user->name = $data['name'];
$user->surename = $data['surename'];
$user->email = $data['email'];
$user->phone = $data['phone'];
$user->picture = $data['picture'];
$user->password = password_hash($data['password'], PASSWORD_DEFAULT);
R::store($user);
echo '<div style="color: green;">Регистрация прошла успешно!</div><br><a href="/">Главная<a>';
$myimg = './uploads/' . basename($_FILES['picture']['name']);
if (move_uploaded_file($_FILES['picture']['tmp_name'], $myimg)) {
}
mail($data['email'], "Спасибо за регистрацию", 'Ваш Email '.$data['email'].' '.'Ваш пароль: '.$data['password'], 'From: qwertybackqwerty@yandex.ru');
} else {
echo '<div style="color: red;">'.array_shift($errors).'</div>';
}
}
?>
<form action="signup.php" method="POST">
<p>
<p><strong>Ваше имя</strong></p>
<input type="text" name="name" value="<?php echo @$data['name']; ?>">
</p>
<p>
<p><strong>Ваша фамилия</strong></p>
<input type="text" name="surename" value="<?php echo @$data['surename']; ?>">
</p>
<p>
<p><strong>Ваша почта</strong></p>
<input type="email" name="email" value="<?php echo @$data['email']; ?>">
</p>
<p>
<p><strong>Ваш номер телефона</strong></p>
<input type="text" name="phone" value="<?php echo @$data['phone']; ?>">
</p>
<p>
<p><strong>Изображение профиля</strong></p>
<input type="file" name="picture">
</p>
<p>
<p><strong>Ваш пароль</strong></p>
<input type="password" name="password">
</p>
<p>
<p><strong>Подтвердите пароль</strong></p>
<input type="password" name="confirm">
</p>
<p>
<button type="submit" name="do_signup" class="btn">Зарегистрироваться</button>
</p>
<p>Уже есть аккаунт? <a class="authlink" href="login.php">Авторизация</a></p>
</form>