мы создаем коллажный проект, который собирается хранить имя, категорию и данные веб-сайта, поэтому мы закончили с веб-сайтом, и теперь мы хотим создать приложение, которое будет взаимодействовать с сервером через API
. у нас был простой код, подобный этому, в скрипте php при добавлении данных в базу данных echo json_encode(true)
. как знают android программисты, в модифицированной библиотеке используется механизм типа пары «ключ-значение», поэтому мы обновили код следующим образом.
<?php
$websiteName = $_POST['website_name'];
$websiteCategory = $_POST['website_cat'];
$websiteDetails = $_POST['website_details'];
try {
$pdo = new PDO('mysql:host=localhost;dbname=website' , 'root' , '');
$sql = 'INSERT INTO website_data SET website_name = :website_name , website_cat = :website_cat , website_details = :web_del';
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':website_name' ,$websiteName);
$stmt->bindValue(':website_cat' ,$websiteCategory);
$stmt->bindValue(':web_del' ,$websiteDetails);
$stmt->execute();
echo json_encode(['response' => 'true']);
} catch (PDOException $e) {
$msg = $e->getMessage();
echo json_encode(['response' => $msg]);
}
?>
, а вот код javascript, который выполняет операцию с ajax
function sendData(websiteName , categoryName , websiteDetails){
var params = 'website_name='+websiteName+'&website_cat='+categoryName+'&website_details='+websiteDetails;
var xml = new XMLHttpRequest();
xml.onreadystatechange = function(){
if(this.status == 200 && this.readyState == 4){
var response = this.responseText;
var responseJson = JSON.parse(response);
console.log('resonse from server' , responseJson['response']);
if(responseJson['response'] == 'true'){
addToCurrent(websiteName , categoryName , websiteDetails);
}else{
alert('unfortunatley data could not added succesfully');
}
} else{
console.log('there is some problem with sever');
}
}
xml.open('POST' , '../php/addNewWebsite.php' , true);
xml.setRequestHeader('Content-type' , 'application/x-www-form-urlencoded');
xml.send(params);
}
это работает с отступом в localhost good, но оно не работает на нашем бесплатном сервере, оно показывает alert('unfortunatley data could not added succesfully');
я не знаю, почему это происходит. у нас есть бесплатный сервер и домен от awardspace.com
ОБНОВЛЕНИЕ
вот сообщение об ошибке, которое я получаю от server SQLSTATE[HY000] [2002] No such file or directory
Спасибо.