如何在eclipse

时间:2016-05-09 08:49:55

标签: php mysql

我正在尝试从mysql数据库中获取数据并将其填充到列表视图中。

我正在获取我的系统的IP地址

String link_url = "192.168.19.6";

现在在我的wamp服务器中,我有一个名为

的文件
/product_api/getDataProduct.php";

我现在想要在eclipse中调用此文件我正在做这个

link_url = Referensi.link+"/product_api/getDataProduct.php";

请问这是将android连接到mysql的正确方法,以及我如何知道我在eclipse上调用的文件是否连接到mysql数据库。

这是getDataOriduct.php文件

<?php

include("koneksi.php");

$q = mysql_query('select * from produk');

    $v = '{"info" : [';
    while($r=mysql_fetch_array($q))
    {
        $ob = array("<br>","<b>","</b>");
        if(strlen($v)<12)
        {
            $v .= '{"id_produk" : "'.$r['id_produk'].'", "nama_produk" : "'.$r['nama_produk'].'", "harga" : "'.$r['harga'].'", "deskripsi" : "'.$r['deskripsi'].'", "stok" : "'.$r['stok'].'", "gambar" : "'.str_replace($ob,"",$r['gambar']).'"}';
        }
        else
        {
            $v .= ',{"id_produk" : "'.$r['id_produk'].'", "nama_produk" : "'.$r['nama_produk'].'", "harga" : "'.$r['harga'].'", "deskripsi" : "'.$r['deskripsi'].'", "stok" : "'.$r['stok'].'", "gambar" : "'.str_replace($ob,"",$r['gambar']).'"}';
        }

    }
    $v .= ']}';
    echo $v;
?>

这是包含的文件

<?php
    $conn = mysql_connect("localhost","root","");
    $db = mysql_select_db("android_tokobaju");
?>

这是发生错误的地方,此方法在oncreate方法中定义

JSONParser jParser = new JSONParser();
        String nlink_url = link_url +"/product_api/getDataProduct.php";
        JSONObject json = jParser.AmbilJson(nlink_url);

这是堆栈跟踪

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ecommysql.yonandroid/com.ecommysql.yonandroid.PhotoProduk}: java.lang.IllegalStateException: Target host must not be null, or set in parameters.

这是AmbilJson功能

public JSONObject AmbilJson(String url) {

        // Making HTTP request
        try {
            // defaultHttpClient
            DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost httpPost = new HttpPost(url);

            HttpResponse httpResponse = httpClient.execute(httpPost);
            HttpEntity httpEntity = httpResponse.getEntity();
            is = httpEntity.getContent();           

        }

请与上面的数据库连接到mysql db。感谢

2 个答案:

答案 0 :(得分:2)

你的方向非常错误我的朋友。您共享的代码中存在许多问题。在开始之前你必须先了解一些事情。

Why shouldn't I use mysql_* functions in PHP

之后 JSON with PHP

之后,您的代码将如下所示     

include("koneksi.php");

$q = mysql_query('select * from produk'); // change it too

    $v['info'] = [];


    while($r=mysql_fetch_array($q))
    {
        $ob = array("<br>","<b>","</b>");
        $temp['id_produk'] = $r['id_produk'];
        $temp['nama_produk'] = $r['nama_produk'];
        $temp['harga'] = $r['harga'];
        $temp['deskripsi'] = $r['deskripsi'];
        $temp['stok'] = $r['stok'];
        $temp['gambar'] = str_replace($ob,"",$r['gambar']);
        $v['info'][] = $temp;
    }

    echo json_encode($v);
?>

之后在android端你必须使用

Simple parse JSON from URL on Android and display in listview

  

您无法直接将android连接到 MySql ,您必须使用任何服务器   一种语言,它将从mysql中获取数据并提供给   机器人。在您的情况下, PHP 是服务器端脚本语言   从mysql获取数据并返回JSON作为响应。通过 Android   向服务器发出 HTTP 请求,您可以从中获取 JSON   服务器,然后用该数据为列表充气。

答案 1 :(得分:-1)

您应该添加用户名,密码,主机名和数据库。 再加上他们再试一次。

<?php
$username = "your_name";
$password = "your_password";
$hostname = "localhost"; 
$dbase ="your_database";

//connection to the database
$dbhandle = mysql_connect($hostname, $username, $password,$dbase) 
 or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";



//execute the SQL query and return records
$result = mysql_query("SELECT id, model,year FROM cars");

//fetch tha data from the database 
while ($row = mysql_fetch_array($result)) {
   echo "ID:".$row{'id'}." Name:".$row{'model'}."Year: ". //display the results
   $row{'year'}."<br>";
}
//close the connection
mysql_close($dbhandle);
?>