500 Internal Server Error bij Ajax + PHP

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Thomas Helling

Thomas Helling

25/05/2012 10:12:56
Quote Anchor link
Hey jongens,

Als ik me niet vergis is er bij een 500 internal server error geen fout in mijn Javascript. Dit zijn de queries. Ik weet zeker dat mijn database gewoon werkt.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
function saveNote($movie_id, $user_id, $text, $mode) {
        $con = $this->database->connect();
        $text = $this->database->real_escape_string($text);
        $user_id = $this->database->real_escape_string($user_id);

        if (is_numeric($movie_id)) {
            $len = 16;
            $base = 'ABCDEFGHKLMNOPQRSTWXYZabcdefghjkmnpqrstwxyz123456789';
            $max = strlen($base) - 1;
            $password = '';
            mt_srand((double) microtime() * 1000000);
            while (strlen($activatecode) < $len + 1) {
                $password.=$base{mt_rand(0, $max)};
            }
            $query = "INSERT INTO notes( user_id, movie_id, TEXT, MODE , PASSWORD)
            VALUES ('$user_id', $movie_id,  '$text', $mode,  '$password')";
            return $query;
            $result = $con->query($query);
            if ($result) {
                return true;
            } else {
                return false;
            }
        } else {
            return false;
        }
        $this->database->close();
        $con = null;
    }

function updateNote($movie_id, $user_id, $text, $mode) {
        $con = $this->database->connect();
        $user_id = $this->database->real_escape_string($user_id);
        $text = $this->database->real_escape_string($text);

        if (is_numeric($movie_id)) {
            $query = "UPDATE notes SET text='$text' WHERE user_id='$user_id' AND movie_id=$movie_id";
            $result = $con->query($query);
            if ($result) {
                return true;
            } else {
                return false;
            }
        } else {
            return false;
        }
        $this->database->close();
        $con = null;
    }


De file die ik aanroep heet Notes.php en die roep ik hier aan met ajax:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$('#savenote').click(function() {
        var text = $('#taNotes').val();
        $.post('toolkit/Notes.php', {
            text : text,
            movie_id : test,
            mode : 1
        },
        function(output) {
            $('#confirm').html(output).show().delay(3000).queue(function(n) {
                $(this).hide();
                n();
            });
        });
    });


En mijn Notes.php is als volgt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
include_once('../connection/Querymanager.php');
session_start();

if (isset($_POST['movie_id']) && isset($_POST['text']) && isset($_POST['mode'])) {
    $movie_id = $_POST['movie_id'];
    $user_id = $_SESSION['id'];
    $mode = $_POST['mode'];

    if(!empty($_POST['text'])) {
        $text = $_POST['text'];
        $text = str_replace("\n", "<br />", $text);
        $database = Querymanager::getInstance();
        $check = $database->loadNote($movie_id, $user_id);
        if(isset($check)) {
            $success = $database->updateNote($movie_id, $user_id, $text, $mode);
        } else {
            $success = $database->saveNote($movie_id, $user_id, $text, $mode);
        }
        if($success) {
            echo "<div style='color:green;'>De note is succesvol opgeslagen.</div>";
        } else {
            echo "<div style='color:red;'>De note is niet succesvol opgeslagen.</div>";
        }
        
    } else {
        echo "Er staat niks in het notitieblok.";
    }
} else {
    echo "Er is niks gevonden";
}


Ik krijg de heletijd een Internal Server Error, maar ik zou echt niet weten waar. Ik hoop dat jullie misschien mijn fout zien, want ik zit echt helemaal vast en heb een deadline te halen haha. In mijn console wordt de POST gedaan, maar dan blijft die Pending. Dus hij maakt Notes.php niet af.

Bij voorbaat dank,

Thomas.
Gewijzigd op 25/05/2012 10:14:01 door Thomas Helling
 
PHP hulp

PHP hulp

23/11/2024 10:04:49
 
- Ariën  -
Beheerder

- Ariën -

25/05/2012 10:16:17
Quote Anchor link
En heb je al bedacht dat je de error_log kan bekijken?
Gewijzigd op 25/05/2012 10:16:48 door - Ariën -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.