Проблема с отправкой данных из приложения Cordova на сервер с использованием jQuery - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь отправить данные из файла HTML на локальный хост, используя xampp, и он не публикуется в БД. Это показывает, что успешно добавлено, но не показывается. мое имя сервера и URL верны или что я делаю неправильно? И как мы можем открыть его на нашем мобильном телефоне, используя xampp?

HTML файл комментария. html

<!DOCTYPE html>
<html lang="en">
<head>
     <meta charset="utf-8" />
        <meta name="format-detection" content="telephone=no" />
        <!-- WARNING: for iOS 7, remove the width=device-width and height=device-height attributes. See https://issues.apache.org/jira/browse/CB-4323 -->
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

    <title>Loading data into a Cordova app</title>
</head>
<body>

  <div data-role="page">
  <div data-role="header">
    <h1>Welcome To My Form Submit Example</h1>
  </div>
  <div data-role="main" class="ui-content">
    <form>
      <div class="ui-field-contain">
        <label for="email">
            <b>Email</b></label>
            <input type="email" id="email" name="email">
        <label for="comment">
            <b>Comment</b></label>
            <textarea id="comment" name="comment" cols="30" rows="10"></textarea>
         </div>
         <input type="submit" data-inline="true" value="Submit">
    </form> 
  </div>
  <div data-role="footer">
    <h1>Developed by Tareq Assaf</h1>
  </div>
</div>

  <script type="text/javascript" src="cordova.js"></script>
  <script type="text/javascript" src="index.js"></script>
  <script type="text/javascript">

$('form').submit(function(){
    var postData = $(this).serialize();

    $.ajax({
        type: 'POST',
        data: postData,
        url: 'http://ccr/comment.php',
        success: function(data){
            console.log(data);
            alert('Your comment was successfully added');
        },
        error: function(){
            console.log(data);
            alert('There was an error adding your comment');
        }
    });

    return false;
});



        </script>
</body>
</html>

index. js

$('form').submit(function(){
    var postData = $(this).serialize();

    $.ajax({
        type: 'POST',
        data: postData,
        url: 'http://ccr/comment.php',
        success: function(data){
            console.log(data);
            alert('Your comment was successfully added');
        },
        error: function(){
            console.log(data);
            alert('There was an error adding your comment');
        }
    });

    return false;
});

комментарий. php

$server = "localhost";
$username = "root";
$password = "";
$database = "ccr";

$con = mysql_connect($server, $username, $password) or die ("Could not connect: " . mysql_error());

mysql_select_db($database, $con);


$email = mysql_real_escape_string($_POST["email"]);
$comment = mysql_real_escape_string($_POST["comment"]);

$sql = "INSERT INTO comment (email, comment) ";
$sql .= "VALUES ('$email', '$comment')";

if (!mysql_query($sql, $con)) {
    die('Error: ' . mysql_error());
} else {
    echo "Comment added";
}

mysql_close($con);

echo('Added Successfully');

phpmyadmin data photo 1

Ответы [ 2 ]

0 голосов
/ 04 мая 2020

убедитесь, что вы указываете правильный URL-адрес

url: 'http://ccr/comment.php',

проверьте, является ли он

url: 'http://localhost/ccr/comment.php',

, а также вы не можете получить доступ к локальному хосту с других устройств, таких как ваш мобильный телефон и т. Д. c. если это так, вы должны использовать 127.0.0.1 или попробовать свой IP-адрес как http://198.41.2.115/ccr/comments.php

0 голосов
/ 04 мая 2020

URL ajax кажется неправильным, url: 'http://ccr/comment.php',

Это недопустимый домен, скажем, если он локальный, он должен быть либо localhost, либо somedomain.test, что-то вроде что,

Обратите внимание: если вы указываете ajax с мобильного телефона на локальный хост P C, вы должны указать его через IP-адрес, оба должны быть в одной сети.

Допустим, IP-адрес вашего P C равен 192.168.1.21, поэтому ваш ajax должен указывать на это 192.168.1.21/comment.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...