2016-05-18 4 views
0

Ich bin neu & ajax php und ich führen eine einfache Anwendung, funktioniert es nicht, und ich weiß nicht, warum. Ich benutze mamp, Windows 8.1.Verbindung fehlgeschlagen: Kann nicht an MySQL-Server auf ‚localhost‘ php verbinden

Hier sind die PHP-Datei:

<?php 

$grId = $_GET["groupId"]; 
$limit = $_GET["limit"]; 

if ($limit <= 0) { 
    $limit = 10; 
} 

$servername = "localhost"; 
$username = "root"; 
$password = "root"; 
$dbname = "productsdb"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 

// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$sql = "SELECT id, displayName, role, groupId FROM user where groupId = ? limit ?"; 

$stmt = $conn->prepare($sql); 
$stmt->bind_param("ii", $grId, $limit); 
$stmt->execute(); 
$stmt->bind_result($id, $displayName, $role, $groupId); 

$users = array(); 

while($stmt->fetch()) { 
    $user = new StdClass(); 
    $user->id = $id; 
    $user->displayName = $displayName; 
    $user->role = $role; 
    $user->groupId = $groupId; 

    array_push($users, $user); 
} 

echo json_encode($users); 

$stmt->close(); 
$conn->close(); 
?> 

und die HTML-Datei:

<html> 
<head> 
<script src="jquery-2.1.4.js"></script> 
<script> 

$(document).ready(function() { 
    $('#students').hide(); 
    $("#getStudentsButton").click(function() { 
    $.ajax({ 
     dataType: "json", 
     type: "GET", 
     url: "getStudentsJson.php", 
     data: {groupId: 1, limit: 7}, 
     success: renderTable 
    }); 
    }); 

    function renderTable(data) { 
    var trHTML = ''; 
    $.each(data, function (i, item) { 
     trHTML += '<tr><td>' + item.id + '</td><td>' + item.displayName + '</td><td>' 
      + item.role + '</td> <td> ' + item.groupId + ' </td></tr>'; 
    }); 

    $('#students').append(trHTML); 
    $('#students').show(); 
    } 

}); 
</script> 
</head> 

<body> 

The list of students: 
<div id="maindiv"> 
<table id="students" border="1"> 
<tr> 
    <th>Id</th> 
    <th>Name</th> 
    <th>Role</th> 
    <th>GroupId</th> 
</tr> 

</table> 

</div> 
<input id="getStudentsButton" type="button" value="Load students"/> 

</body> 
</html> 

Ich schreibe: http://localhost/nameOfFolder/getStudentsJson.php im Browser und ich erhalte die Fehlermeldung:

Connection failed: Can't connect to MySQL server on 'localhost' (10061)

Jetzt Ich denke der Fehler kann sein, dass vor der Installation von Mamp ich auch Mysql hatte. Ich habe eine neue Datenbank in PHP erstellt myadmin genannt productsdb mit dem 4 columns.I denkt, dass aus gibt es einige Konflikte in Bezug auf die Datenbank von phpMyAdmin und meine Datenbank MySQL. Und der Name localhost, die ich in PHP-Datei geschrieben haben axiously versucht zu meinem lokalen MySQL zu verbinden, die eine, die ich vor dem mit MAMP installiert haben.

Jede Lösung, um diese Probleme zu beheben?

+0

Funktioniert es, wenn Sie '$ server ändern = "localhost",' auf '$ servername = "127.0.0.1";'? – Asaph

+0

phpMyAdmin ist nur ein PHP-Skript, das zu einer MySQL-Datenbank verbindet. Kannst du eine Verbindung zu mysql @ localhost mit einem Tool/Client wie mysql Kommandozeile, mysql workbench, etc herstellen? – JimL

+0

jetzt funktioniert es, ich habe nichts getan, ich denke, ich habe nicht gut in Browser geschrieben..nun. Die Operation funktioniert nicht. Ich kann die Benutzer nicht aus der Datenbank laden –

Antwort

1

The error (2003) Can't connect to MySQL server on 'server' (10061) indicates that the network connection has been refused. You should check that there is a MySQL server running, that it has network connections enabled, and that the network port you specified is the one configured on the server.

Manual

Dies könnte entweder der Server nicht läuft oder möglich, ein Firewall-Problem (nicht sehr wahrscheinlich, wenn Sie die entsprechenden Informationen in PHPMyAdmin sehen). Sie haben angegeben, dass Sie sich auf Windows befinden, also würde ich zunächst die Firewall deaktivieren und die Konnektivität testen und dann die Checkliste im MySQL-Handbuch durcharbeiten.

Verwandte Themen