Einfügen/aktualisieren der Daten in der MySql-Datenbank mit php

Ich versuche, einfügen/aktualisieren der MySql-Datenbank, je nachdem, ob ein post existiert bereits auf der Datenbank (ich checke das mit einem einzigartigen user_id). Die folgenden Werke:

$select_query = "SELECT * ";
$select_query .= "FROM test ";
$select_query .= "WHERE user_id = '$user_id'";

$check_user_id = mysqli_query($connection, $select_query);

$query  = "INSERT INTO test (";
$query .= "  user_id, name, message";
$query .= ") VALUES (";
$query .= "  '{$user_id}', '{$name}', '{$message}'";
$query .= ")";

$result = mysqli_query($connection, $query);

if ($result) {
    echo "Success!";
} else {
    die("Database query failed. " . mysqli_error($connection));
}

Jedoch, wenn ich den folgenden code mit einer if/else-Anweisung, funktioniert es nicht mehr, obwohl die Konsole meldet "Erfolg!" (also $result einen Wert hat). Jegliche Hilfe würde sehr geschätzt werden. Danke.

$select_query = "SELECT * ";
$select_query .= "FROM test ";
$select_query .= "WHERE user_id = '$user_id'";

$check_user_id = mysqli_query($connection, $select_query);

if (!$check_user_id) {
    $query  = "INSERT INTO test (";
    $query .= "  user_id, name, message";
    $query .= ") VALUES (";
    $query .= "  '{$user_id}', '{$name}', '{$message}'";
    $query .= ")";
} else {
    $query  = "UPDATE test SET ";
    $query .= "name = '{$name}', ";
    $query .= "message = '{$message}' ";
    $query .= "WHERE user_id = '{$user_id}'";
}

$result = mysqli_query($connection, $query);

if ($result) {
    echo "Success!";
} else {
    die("Database query failed. " . mysqli_error($connection));
}

InformationsquelleAutor sublimepremise | 2013-08-10

Schreibe einen Kommentar