mysql - phonegap/msql(i) 无法建立与数据库的连接

标签 mysql ios phpmyadmin cordova database-connection

我目前正在为 iOS 开发一个网络应用程序,但该应用程序无法正确连接。

当我尝试登录时,我收到以下 iOS 弹出窗口:index.html 错误。

当 PHP 文件在线时,

这是我的一些代码:

连接.php

<?php //Make connection with database
// Verbinden met MySQL Database
$host = "localhost"; // Welke server : localhost 
$username = "*******"; // Gebruikersnaam
$password = "****"; // Wachtwoord
$dbnaam = "*****"; // Naam van de database
$db_error1 = "<p>FOUT: verbinden met databaseserver is mislukt</p>"; // Foutmelding 1
$db_error2 = "<p>FOUT: selecteren van database is mislukt</p>"; // Foutmelding 2
$db_error3 = "<p>FOUT: sluiten van database is mislukt</p>"; // Foutmelding 3

// Verbinden met Databaseserver
$con=mysqli_connect($host, $username, $password, $dbnaam);// or die($db_error1);
// verbinden met de database
//mysql_select_db($dbnaam, $db) or die($db_error2);
if (mysqli_connect_errno($con))
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
?>

演示.js

// define the URL of the server component
//var url ="http://www.jorisgraaumans.nl/dutchmobile/";
//var url = "http://localhost:8888/Mobile/Festival/";
var url = "http://www.rikvandoorn.com/mobile/";

// afvangen van het standaard submit event
// zie ook: http://api.jquery.com/submit/

$('#login').on('pageinit', function(event) {
    $('#loginForm').submit(function() {
        $.ajax({
            type: "POST",
            url: "processLogin.php",
            cache: "false",
            dataType: "json",
            data: {
                email : $('#email').val(),
                wachtwoord : $('#wachtwoord').val(),
            },
            success: function(phpData){ 
                $("#return").data("login", phpData.login);
                console.log("login is: "+ phpData.login);
                if(phpData['error'] == true){
                    $.mobile.changePage("#return", {
                        transition : "fade"
                    })
                } else {
                    $.mobile.changePage("#home", {
                        transition : "fade"
                    })
                }
            },  
            error: function(){
                    alert('Error');
            }                   
        }); 
        return false; // return false to prevent the default submit of the form to the server.
    });
    // end: pageinit loginForm  
});
$('#return').on('pageshow', function(event) {
    $("#error_message_log").empty();
    $("#error_message_log").prepend('<p>' +  $(this).data('login') + '</p>');
});

processLogin.php

<?php //process login form 

include 'http://www.rikvandoorn.nl/mobile/connect.php'; //connection to database
if(empty($_POST['email']) || empty($_POST['wachtwoord'])){
    $return['error'] = true;    //return error
    $return['login'] = 'Niet alle velden zijn ingevuld';
} else {
    $email = $_POST['email'];
    $wachtwoord = $_POST['wachtwoord'];

    //Check if user exists
    $sql = "SELECT * FROM gebruiker WHERE email = '$email'";
    $result = mysql_query($sql) or die(mysql_error());
    $num_rows = mysql_num_rows($result);    

    if($num_rows == 0){
        $return['error'] = true;
        $return['login'] = 'Gebruiker bestaat niet';
    } else {
        //Check if password is correct for user
        $sql_2 = "SELECT * FROM gebruiker WHERE email = '$email'  && wachtwoord = '$wachtwoord'";
        $query_2 = mysql_query($sql_2);
        $num_rows_2 = mysql_num_rows($query_2);
        if($num_rows_2 == 0){
            $return['error'] = true;
            $return['login'] = 'Wachtwoord onjuist';
        } else {
            $return['error'] = false;
            $return['login']['email'] = $email;
            $return['login']['wachtwoord'] = $wachtwoord;
        }
    }
}
echo json_encode($return);

最佳答案

除非你的代码充满了拼写错误,否则你就是在混合两个完全独立的 mysql 库:

$con=mysqli_connect($host, $username, $password, $dbnaam);// or die($db_error1);
          ^---note the presence of an 'i'

以及其他脚本:

$result = mysql_query($sql) or die(mysql_error());
               ^---note the LACK of an 'i'

mysql 和 mysqli 不能互换,其中一个建立的连接对另一个完全没有用处。

mysql(没有 i)库已过时且已弃用。仅坚持使用 mysqli(WITH 一个 i)。

关于mysql - phonegap/msql(i) 无法建立与数据库的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17430177/

相关文章:

php - 如何包装PDO类?

iphone - 从 viewController 调用时不会导致重绘

ios - Swift 4.2 中带有 JSON 数据的 TableView

iphone - 循环 MPMoviePlayerController 视频时可能出现线程问题

mysql - 以带有标题的 CSV 格式导出 SQL 表

mysql - SQL导入错误

mysql - JSP插入SQL命令

java - 从数据库获取最新数据到jsp页面

MySQL phpMyAdmin当前日期时间的平均值计数事件

java - Getting WARN : SQL Error: 1205, SQLState : 41000 ERROR: Lock wait timeout exceeded; try restarting transaction. 使用hibernate保存记录