我使用在线SQLite数据库(http://demo3534535.16mb.com)创建了一个基本的登录应用程序 它在在线服务器上工作正常。 现在我想在Gennymotion模拟器中使用WAMP在本地服务器上运行。
我必须做的代码有哪些变化? 我的在线代码是:
dbconnect.php
<?php
define('HOST','mysql.hostinger.in');
define('USER','u756_userd');
define('PASS','pass345');
define('DB','u754113_demo');
$con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect');
MainActivity.java
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private static final String REGISTER_URL = "http://192.168.1.102/User/Register.php";
public static final String KEY_USERNAME = "username";
public static final String KEY_PASSWORD = "password";
public static final String KEY_EMAIL = "email";
private EditText editTextUsername;
private EditText editTextEmail;
private EditText editTextPassword;
private Button buttonRegister;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextUsername = (EditText) findViewById(R.id.editTextUsername);
editTextPassword = (EditText) findViewById(R.id.editTextPassword);
editTextEmail= (EditText) findViewById(R.id.editTextEmail);
buttonRegister = (Button) findViewById(R.id.buttonRegister);
buttonRegister.setOnClickListener(this);
}
private void registerUser(){
final String username = editTextUsername.getText().toString().trim();
final String password = editTextPassword.getText().toString().trim();
final String email = editTextEmail.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, REGISTER_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(MainActivity.this, response, Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this,error.toString(),Toast.LENGTH_LONG).show();
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put(KEY_USERNAME,username);
params.put(KEY_PASSWORD,password);
params.put(KEY_EMAIL, email);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
@Override
public void onClick(View v) {
if(v == buttonRegister){
registerUser();
}
}
}
db_connect.php
<?php
define('HOST','localhost');
define('USER','');
define('PASS','');
define('DB','db_demo');
$con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect');
Register.php
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
require_once('dbConnect.php');
$sql = "INSERT INTO volley (username,password,email) VALUES ('$username','$email','$password')";
if(mysqli_query($con,$sql)){
echo "Successfully Registered";
}else{
echo "Could not register";
}
}else{
echo 'error';
}
我通过wifi使用互联网
答案 0 :(得分:0)
如果您要去当地,请按以下步骤操作:
您需要创建WLAN。打开命令提示符管理模式并键入以下命令:
netsh wlan set hostednetwork mode=allow ssid=DevelopmentLAN key=yourPassword
按OK。然后执行以下命令:
netsh wlan start hostednetwork
这将启动您的WLAN 。
现在在命令行中键入ipconfig
,以便发现计算机的IPv4地址:
修改强>
确保您注意到无线LAN适配器的IPv4地址。
请注意此IP地址。这是您将用作 HOST 地址的那个。
配置部分。
更改define('HOST','mysql.hostinger.in');
到此 define('HOST','localhost');
至于其余部分,您需要将用户的名称,密码和数据库名称分别更改为 WAMPServer 的用户名和密码以及WAMP上的数据库名称。
现在我假设您的 register.php 文件包含在WAMP项目目录(C:/ wamp / www / User / register)中的用户文件夹中。 PHP)。将REGISTER_URL
的值更改为:
private static final String REGISTER_URL = "http://192.168.1.3/User/register.php";
就是这样,你准备好了。最后确保防火墙已关闭,否则它会阻止您的genymotion模拟器从连接到您计算机上的WAMP服务器,并且您更改了 192.168.1.3 到您机器的IP地址。