Следующий код работает очень хорошо, но строка $connection->query('call user_create(145552, \'[email protected]\');');
не создает пользователя в базе данных.Последовательные запросы в том же соединении не работают
function updateFacebook($id) {
$connection = mysqli_connect('localhost', 'root', '', 'databasename');
$count = $connection->query('call user_by_facebook_read(' . $id . ');')->num_rows;
if ($count == 0) {
$request = \Slim\Slim::getInstance()->request();
$body = $request->getBody();
$json = json_decode($body);
$token = $json->token;
$facebook = new Facebook(array(
'appId' => 'value',
'secret' => 'value',
'cookie' => true
));
$facebook->setAccessToken($token);
$facebook->api('/me/feed', 'post', array(
'message' => 'message',
'picture' => 'https://www.google.com.br/images/srpr/logo4w.png',
'link' => 'https://www.google.com.br',
'description' => 'description',
'name' => 'name',
'caption'=> 'caption'
));
$connection->query('call user_create(145552, \'[email protected]\');');
}
$connection->close;
$json = json_encode(array(
'r' => true
));
echo $json;
}
Если я запускаю следующий код также работает просто отлично:
$connection = mysqli_connect('localhost', 'root', '', 'databasename');
$connection->query('call user_create(145552, \'[email protected]\');');
$connection->close;
Если закрыть соединение после $count
и открыть его снова перед user_create называют это тоже работает.
Что происходит?
Вы знаете, если запрос на самом деле является запуск? Другими словами, вы уверены, что даже добираетесь до этой строки кода? – Revent
Yeh. Я уверен. Взгляните в мое редактирование. – lolol
Вам нужно запустить '-> close()' в результате, но вы отбросили это. Итак: '$ result = $ connection-> query (..); $ count = $ result-> num_rows; $ result-> close(); '. – Wrikken