2017-05-22 4 views
2

Ich habe alles online versucht, aber ich erhalte immer noch einen Fehler bei AJAX Request. Versucht mit XMLHttpRequest() Anfrage auch, aber konnte das Problem nicht lösen.AJAX Fehler beim Laden der Ressource: Der Server hat mit dem Status 403 (Forbidden) geantwortet

Hier ist meine Ajax-Request

$.ajax({ 
type: "POST", 
url: "ajaxsubmit.php", 
data: { 
    content: post_data 
}, 
cache: false, 
success: function(result){ 
alert("The Data have been Entered."); 
} 

}); 

Dies ist mein ajaxsubmit.php

<?php 
session_start(); 

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

$content = $_POST['content']; 

$tb_name = "pdf".$content[10]; 

$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
die("Connection failed: " . $conn->connect_error); 
} 

$sql = "CREATE TABLE IF NOT EXISTS $tb_name (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
APNR TEXT, APDA TEXT, TMNM TEXT, TMTY TEXT,OWNN TEXT,OWNA TEXT, 
OWNC TEXT,CORN TEXT,CLAS TEXT,DES TEXT, ENTRY_TYPE TEXT, LOGO_SRC TEXT 
)"; 

if ($conn->query($sql) === TRUE) { 
echo "Table MyGuests created successfully"; 
} else { 
echo "Error creating table: " . $conn->error; 
} 

$sql="insert into $tb_name (APNR, APDA, TMNM, TMTY, 
OWNN,OWNA,OWNC,CORN,CLAS,DES,ENTRY_TYPE,LOGO_SRC) values ('$content 
[0]', '$content[1]', '$content[2]','$content[3]','$content[4]','$content 
[5]','$content[6]','$content[7]','$content[8]','$content[9]','$content 
[11]','$content[12]')"; 

if ($conn->query($sql) === TRUE) { 
echo "Table MyGuests created successfully"; 
} else { 
echo "Error creating table: " . $conn->error; 
} 

$conn->close(); 
?> 

I XMLHttpRequest versucht() diese Weise

JS TEIL var http = neues XMLH ttpRequest();

var url = "ajaxsubmit.php"; 
var params = "lorem=ipsum&name=binny"; 
http.open("POST", url, true); 

//Send the proper header information along with the request 
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
http.setRequestHeader("Content-length", params.length); 
http.setRequestHeader("Connection", "close"); 

http.onreadystatechange = function() {//Call a function when the state 
changes. 
if(http.readyState == 4 && http.status == 200) { 
alert(http.responseText); 
} 
} 
http.send(params); 

Bitte geben Sie mir Ihren besten Vorschlag als Lösung.

+0

In den Logdateien für den Webserver, was siehst du? Vielleicht ein Problem mit der Dateierlaubnis? – Rabin

+0

Wie sehen Sie die Log-Dateien auf dem Webserver? –

+0

Welchen Webserver verwenden Sie? Apache? Nginx? Sonst? – Rabin

Antwort

0

Schuss im Dunkeln, versuchen aber vor

cache: false, 

Es hat für mich gearbeitet zu löschen. Ich weiß nicht warum.

+0

Fehler beim Laden der Ressource: Der Server reagierte mit einem Status von 403 (verboten) –

+0

noch gleichen Fehler. –

0

Ich glaube nicht, dass dies mit Client-Seite zu tun hat, überprüfen Sie Ihren Server und stellen Sie sicher, dass Ihr Webserver (httpd auf CentOS/RH/Fedora oder www-Daten auf Ubuntu/Debian-basierte Distribution) Zugriffserlaubnis haben die Bewerbungsmappe, eine Sache, die Sie tun können, ist cd in den Anwendungsordner und chmod zB

cd /path/to/app/dir && chmod 777 . -R 

chmod 777 ist eine schlechte Praxis ist es so verwenden nur zum Debuggen dieser Fall laufen!

-Test wieder und wenn es funktioniert, dann tat es in einer Dateizugriffsberechtigung Problem, und Sie werden die Eigentümer und Gruppenzugriff für den Anwendungsordner anpassen müssen, auf CentOS zum Beispiel

chown myuser:httpd /app/dir -R 

ändern myuser Ihren eigenen Benutzernamen, sollte diese die Berechtigung Datei ändern, reparieren nächsten die Zugriffs Bits

cd /app/dir 
find . -type d -exec chmod -c 775 '{}' \; 
find . -type f -exec chmod -c 664 '{}' \; 

diese Erlaubnis mit dem Besitzer & Gruppe mit R/W Zugriff auf Dateien und jeder wird sich ändern sonst wird nur Lesezugriff haben.

Verwandte Themen