#php #mysql #networking #phpmyadmin
#php #mysql #сеть #phpmyadmin
Вопрос:
Все работает нормально. Журнал ошибок ничего не показывает. Stripe сообщает мне, что он был создан успешно. Но у меня нет записи в моей собственной базе данных. С другой стороны, логин работает отлично. И весь серверный сервер работает нормально. Есть ли какая-либо известная ошибка или что-то, что я пропустил здесь?
session_start();
error_reporting(E_ALL);
ini_set('display_errors', 1);
require_once('Stripe');
require_once('db.php');
mysqli_set_charset($mysqli,"utf8");
if ($stmt = $mysqli->prepare('SELECT ID, password FROM accounts WHERE email = ?')) {
$stmt->bind_param('s', $_POST['email']);
$stmt->execute();
$stmt->store_result();
if ($stmt->num_rows > 0) {
echo 'email exists, please choose another!
Back';
} else {
if ($stmt = $mysqli->prepare('INSERT INTO accounts (email, password, customer) VALUES (?, ?, ?)')) {
$customer = StripeCustomer::create([
"email" => $_POST['email'],
]);
$uniqid = uniqid();
$_SESSION['email'] = $_POST['email'];
$password = hash('sha512',$_POST['password']);
$stmt->bind_param('sss', $_POST['email'], $password, $customer->id );
$stmt->execute();
Комментарии:
1. Попробуйте сделать
if ( false===$stmt ) { die('prepare() failed: ' . htmlspecialchars($mysqli->error)); }
и посмотрите, в чем ошибка.2. не поможет / не помогло. Bc, как я уже сказал, он выполняется (как будто все правильно и присутствует), но запись в БД не будет работать.
3. Откуда
$mysqli
берется? Действительно ли он правильно инициализирован?4. @paskl да, это так. Точно так же, как я сказал. Логин работает в режиме реального времени и работает локально.
5. Тогда, возможно, настройки базы данных отличаются от настроек реального сервера?