Ответы пользователя по тегу PHP
  • Как преобразовать все данные в массиве в string?

    @danchiksux Автор вопроса
    Говнокодер
    Сделал сам:
    foreach ($get_favorite as $element) {
    		settype($element, "string");
    		$get_favorite_str[] .= $element;
    	}
    Ответ написан
    Комментировать
  • Как передать несколько значений в bind_param из массива?

    @danchiksux Автор вопроса
    Говнокодер
    Пытался найти ответ и понял в жопу это всё валю на PDO,
    mysqli. Эта библиотека не предназначена для испрользования напрямую в коде. А только как строительный материал для создания библиотеки более высокого уровня. Напрямую же ей пользоваться невозможно. Легче пережить небольшую атомную войну, чем попытаться привязать несколько переменных в оператор IN().
    Ответ написан
    Комментировать
  • Как правильно сохранять сессию в куки?

    @danchiksux Автор вопроса
    Говнокодер
    Сделал вот такую авторизацию:
    <?php 
    require '../libs/bd.php';
    require '../libs/session.php';
    $date = $_POST;
    $errors = [];
    if (isset($date['log_b'])) {
    	if ($date['login'] == "") {
    		$errors[] = 'Ошибка: Вы не ввели логин!';
    	} else {
    		$p_login = $date['login'];
    		$ack = mysqli_query($connection, "SELECT * FROM `users` WHERE email = '$p_login'");
    		$user = mysqli_fetch_assoc($ack);
    	}
    	if ($date['pass'] == "") {
    		$errors[] = 'Ошибка: Вы не ввели пароль!';
    	} else {
    		$passh = password_verify($date['pass'], $user['password']);
    	}
    
    	if ($passh == false) {
    		$errors[] = 'Ошибка: Вы ввели не верный логин или пароль!';
    	}
    
    	function generatePassword($length = 8){
      $chars = 'abdefhiknrstyzABDEFGHKNQRSTYZ23456789';
      $numChars = strlen($chars);
      $string = '';
      for ($i = 0; $i < $length; $i++) {
        $string .= substr($chars, rand(1, $numChars) - 1, 1);
      }
      return $string;
    }
    
    	if (empty($errors)) {
    		$uuid = password_hash(generatePassword(8), PASSWORD_DEFAULT);
    		setcookie("Auth", $uuid, time()+60*60*24*365*100 , "/");
    		mysqli_query($connection, "UPDATE `users` SET `uuid`='$uuid'");
    		$id = $user['id'];
    		$_SESSION['Auth'] = $id;
    		echo "Успешно";
    	} else {
    		echo array_shift($errors);
    	}
    }
    ?>
    Ответ написан
  • Как прибавлять в поле из БД значение?

    @danchiksux
    Говнокодер
    Выводишь из бд текущий баланс, прибовляешь к текущему баланс то на сколько его нужно повысить.
    Полученное число заносишь в базу.
    Ответ написан