1

您好,我正在做一个获取一些信息并尝试连接到位于服务器上的 php 的应用程序。

这是代码:

<!DOCTYPE HTML>
<html>
 <head>
  <title>PhoneGap</title>
  <script type="text/javascript" charset="utf-8" src="cordova-1.5.0.js"></script>
  <script src="js/jquery-1.js"></script>
    <script>
    $(document).ready(function () {
        $("#btn").click( function() {
        alert('hello hello');

        $.ajax({
            url: "192.168.0.106/test/testget.php",        
            data: {
                t:"lalalala"
            },
            datatype: "json",
            success: function (status)
            {
                if (status.success == false)
                {
                    alert("Failure!");
                }
                else 
                {
                    alert("Success!");
                }
            }
        });

    });
    });
</script>


 </head>
 <body style="background: url(BG.jpg) no-repeat;background-size: 100%;" onload="onBodyLoad()">
<button style="background-color:grey;margin-left:75%;display:block;margin-top:5%;margin-bottom:0%" type="button" onclick="alert('Formulario Enviado')">Enviar</button> 

 <u><h3>TAREA (MOLINO 3)</h3></u> 
  <div style="height:378px;width:305px;border:1px solid #ccc;font:16px/26px Georgia, Garamond, Serif;overflow:auto;">
<form> 
<table border="1">
 <tr>
 <th>Verificación de banda transportadora</th>
 <th>OK</th>
 <th>NO</th>
 </tr>

<tr>
<td>Fugas del material y estado de los rodillos.</td>
<td><input type="radio"  name="DB1"></td>
<td><input type="radio"  name="DB1"></td>
</tr>
<tr>
<td>Desalineamiento de la cinta o banda.</td>
<td><input type="radio"  name="DB2"></td>
<td><input type="radio"  name="DB2"></td>
</tr>
<tr>
<td>La superficie de la banda.</td>
<td><input type="radio"  name="DB3"></td>
<td><input type="radio"  name="DB3"></td>
</tr>
<tr>
<td>El ajuste de la guarda.</td>
<td><input type="radio"  name="DB4"></td>
<td><input type="radio"  name="DB4"></td>
</tr>
<tr>
<td>El ajuste del rascador.</td>
<td><input type="radio" name="DB5" ></td>
<td><input type="radio" name="DB5" ></td>
</tr>
<tr>
<td>La temperatura del motor.</td>
<td><input type="radio"  name="DB6"></td>
<td><input type="radio"  name="DB6"></td>
</tr>
<tr>
<td>La vibración de la banda.</td>
<td><input type="radio"  name="DB7"></td>
<td><input type="radio"  name="DB7"></td>
</tr>
<tr>
<td>El sensor de movimiento.</td>
<td><input type="radio"  name="DB8"></td>
<td><input type="radio"  name="DB8"></td>
</tr>
<tr>
<td>El funcionamiento de las paradas de emergencia.</td>
<td><input type="radio" name="DB9" ></td>
<td><input type="radio"  name="DB9"></td>
</tr>
<tr>
<td>El estado del tambor de cola.</td>
<td><input type="radio"  name="DB10"></td>
<td><input type="radio"  name="DB10"></td>
</tr>
<tr>
<td>El revestimiento del tambor motriz.</td>
<td><input type="radio" name="DB11" ></td>
<td><input type="radio" name="DB11" ></td>
</tr>
<tr>
<td>Los ruidos anormales en el equipo.</td>
<td><input type="radio" name="DB12" ></td>
<td><input type="radio" name="DB12" ></td>
</tr>
<tr>
<td>La lubricación del tambor de la chumacera.</td>
<td><input type="radio"  name="DB13"></td>
<td><input type="radio"  name="DB13"></td>
</tr>
<tr>
<td>Las fugas del lubricante.</td>
<td><input type="radio" name="DB14" ></td>
<td><input type="radio" name="DB14" ></td>
</tr>
<tr>
<td>El estado de las luminarias en la zona (luminarias rotas y funcionales).</td>
<td><input type="radio" name="DB15" ></td>
<td><input type="radio" name="DB15" ></td>
</tr>
<tr>
<td>El material centrado en la cinta.</td>
<td><input type="radio" name="DB16" ></td>
<td><input type="radio" name="DB16" ></td>
</tr>
<tr>
<td>El material que está por debajo de la banda (apartarlo).</td>
<td><input type="radio" name="DB17" ></td>
<td><input type="radio" name="DB17" ></td>
</tr>
<th align="center">Comentarios</th>
 </tr>
    <td><textarea rows="4" cols="20">
</textarea>
    </td>
</div>
<input id="btn" type="submit" value="pressme">
</form>
</table>

<br>


 </body>
</html>

位于192.168.0.106/test/testget.php的 php 文件包含:

<?php echo $_GET['t'] ?>

所有这一切都不是连接的一部分是我没有通过脚本得到消息

更新: 问题出在电话间隙没有让正确的插件工作。

更新 2: 确保您使用的是正确的 jquery 文件

4

3 回答 3

1

您需要检查以下内容:

1. 将错误回调(如果您使用 jQuery 1.8 + 版本则失败)添加到您的 ajax 调用,就像成功一样:

    error: function (request,error) {
        alert('Network error has occurred please try again - error:' + error);
    }

2. 使用 statusCode 回发处理不同的状态码:

    statusCode: {
        400: function() {
            alert("Bad request!");
        },
        401: function() {
            alert("Unauthorized!");
        },
        403: function() {
            alert("Forbidden!");
        },
        404: function() {
            alert("Page not found!");
        },                
        408: function() {
            alert("Request Timeout!");
        },
        200: function() {
            alert("page reached");
        },    
    }

如果出现错误,您可能会收到其中一些代码。

3. 如果您还没有将此行添加到您的 AndroidManifest.xml 中:

<uses-permission android:name="android.permission.INTERNET" />

它将允许您访问互联网和本地网络

4.如果你是在真机上测试这个

不要忘记打开 WIFI 或 3G。你会惊讶于有多少人忘记这样做。

5. 检查您的服务器是否接受外部请求

这听起来可能很愚蠢,但某些 Windows *AMP 解决方案需要先联机,然后才能从网络访问它们。其中之一是例如 WAMP。

于 2013-05-12T09:50:30.803 回答
1

尝试使用

type: 'GET'

例子 :

$.ajax({
            type: 'GET',
            data: postData+'&amp;lid='+landmarkID,
            url: 'http://your-domain.com/comments/save.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');
            }
        });
于 2013-05-14T23:00:37.607 回答
0

如果你希望它是 GET 变量 - 使用

datatype: "text"

代替

datatype: "json"

否则,要获取消息,您必须在 PHP 脚本中解析 JSON

于 2013-05-12T05:05:39.177 回答