啊!存折 - 表格未更新
Argh! Passbook - tables are not updating
Apple pass 存折:
我已经实现了通行证本身,想就更新等进行交流。
对于服务器端(webserviceUrl),我正在使用我调整过的下面的代码。我在 php 方面不是很有经验,所以任何帮助都会很棒!
安装通行证时在控制台上,它与授权码相匹配,似乎可以正常工作,但下面的代码没有更新我的 tables。
表格:
设备 {DeviceID, push_token} 空 -
注册{device_id,pass_id,pass_type}空
还有一个 table Passes,它由序列号、PassID、authtoken 和其他有关通行证的信息组成 - 完整
<?php
$servername = "hostname";
$username = "user";
$password = "pass";
$dbname = "db";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$request = explode("/", substr(@$_SERVER['REQUEST_URI'], 1));
if (strtoupper($_SERVER['REQUEST_METHOD']) === "POST"
&& isset($_SERVER['HTTP_AUTHORIZATION'])
&& strpos($_SERVER['HTTP_AUTHORIZATION'], 'ApplePass') === 0
&& $request[2] === "devices"
&& $request[4] === "registrations") {
$auth_key = str_replace('ApplePass ', '', $_SERVER['HTTP_AUTHORIZATION']);
$device_id = $request[3];
$pass_id = $request[5];
$serial = $request[6];
// Catch the JSON post and decode it
$dt = @file_get_contents('php://input');
$device_token = json_decode($dt);
$device_token = $device_token->pushToken;
$sql="INSERT INTO Registrations (device_id, pass_id, pass_type) VALUES ('".$device_id."', '".$pass_id."', '".$serial."')";
if ($conn->query($sql) === TRUE) {
echo "y";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
$sql="INSERT INTO Devices (DeviceID, push_token) VALUES ( '".$device_id."', '".$device_token."')";
if ($conn->query($sql) === TRUE) {
echo "y";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
mysql_query($sql,$link);
exit;
}
}}
?>
此时任何意见都会非常有用。
为遇到此问题的任何人解决。我对 webserviceurl 的重定向不正确。这是我放入 .htaccess 的内容 - 这意味着我的代码基本上没有分割 url 信息。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !index.php
RewriteRule .* index.php?url=[=10=] [QSA,L]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last]
Apple pass 存折:
我已经实现了通行证本身,想就更新等进行交流。 对于服务器端(webserviceUrl),我正在使用我调整过的下面的代码。我在 php 方面不是很有经验,所以任何帮助都会很棒!
安装通行证时在控制台上,它与授权码相匹配,似乎可以正常工作,但下面的代码没有更新我的 tables。
表格:
设备 {DeviceID, push_token} 空 -
注册{device_id,pass_id,pass_type}空
还有一个 table Passes,它由序列号、PassID、authtoken 和其他有关通行证的信息组成 - 完整
<?php
$servername = "hostname";
$username = "user";
$password = "pass";
$dbname = "db";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$request = explode("/", substr(@$_SERVER['REQUEST_URI'], 1));
if (strtoupper($_SERVER['REQUEST_METHOD']) === "POST"
&& isset($_SERVER['HTTP_AUTHORIZATION'])
&& strpos($_SERVER['HTTP_AUTHORIZATION'], 'ApplePass') === 0
&& $request[2] === "devices"
&& $request[4] === "registrations") {
$auth_key = str_replace('ApplePass ', '', $_SERVER['HTTP_AUTHORIZATION']);
$device_id = $request[3];
$pass_id = $request[5];
$serial = $request[6];
// Catch the JSON post and decode it
$dt = @file_get_contents('php://input');
$device_token = json_decode($dt);
$device_token = $device_token->pushToken;
$sql="INSERT INTO Registrations (device_id, pass_id, pass_type) VALUES ('".$device_id."', '".$pass_id."', '".$serial."')";
if ($conn->query($sql) === TRUE) {
echo "y";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
$sql="INSERT INTO Devices (DeviceID, push_token) VALUES ( '".$device_id."', '".$device_token."')";
if ($conn->query($sql) === TRUE) {
echo "y";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
mysql_query($sql,$link);
exit;
}
}}
?>
此时任何意见都会非常有用。
为遇到此问题的任何人解决。我对 webserviceurl 的重定向不正确。这是我放入 .htaccess 的内容 - 这意味着我的代码基本上没有分割 url 信息。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !index.php
RewriteRule .* index.php?url=[=10=] [QSA,L]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last]