POSTメソッドを使用して、サーバー上のデータベースにデータを挿入します。これは、私の http://www.url.com/public_htmlに保存されているconnection.phpファイルです。 。
<?php
$servername = "http://www.url.com";
$username = "db_username";
$password = "db_password";
$databaseName = "db_name";
$connect = new mysqli($servername,$username,$password,$databaseName);
if ($connect->connect_error) {
die("Connection failed: " . $connect->connect_error);
}
echo "Connected successfully";
?>
これは、データベースにデータを挿入するために使用する http://www.url.com/public_html にも保存されているinsert.phpファイルです。
<?php
if($_SERVER["REQUEST_METHOD"]=="POST"){
require'connection.php';
createStudent();
}
function createStudent(){
global $connect;
$name = $_POST["name"];
$lastname = $_POST["lastname"];
$age = $_POST["age"];
$query="INSERT INTO `demo` ( `name` , `lastname` , `age` )
VALUES ('$name','$lastname','$age')";
mysqli_query($connect,$query)or die (mysqli_error($connect));
mysqli_close($connect);
}
?>
私は郵便配達員を使用し、私のAndroidアプリはこれをテストしますが、imは取得します:接続に失敗しました:php_network_getaddresses:getaddrinfoに失敗しました:名前またはサービスが不明です。
私はphp開発者ではありませんが、phpファイルにエラーが表示されないため、ヘルプを歓迎します。
前もって感謝します。
おかげでPrerak、
これは答えです、私のデータベースは同じマシン上にあるので、編集する必要がありました:
$servername = "localhost"
今、すべてがうまく機能しています。
$servername
に指定した値は、ホスト名ではなく、URLまたはリソース名です。ホスト名はwww.url.com
になります。
もちろん、既に発見したように、クライアントとサーバーが同じボックスにある場合、localhost
は正しいホスト名です。
以下のファイルを変更しますconfig-db.php
nano /etc/phpmyadmin/config-db.php
ローカルホストとしてdbサーバーを変更
$dbserver='localhost';
その作品。