Ich versuche, alle aktualisieren ein int
Wert in meiner Datenbank, wenn das Skript aufgerufen wird. Um dieses Problem zu relativieren, habe ich eine Tabelle mit dem Namen monthly_flagged
, die alle markierten Beiträge auf meiner Website erhält und sie in den Monat sortiert, in dem sie markiert wurden. Das Skript heißt flagged_posts
. Wenn das Skript aufgerufen wird, besteht die Idee darin, dass die Spalte total_flagged
in der Tabelle monthly_flagged
um eins (+1) erhöht wird.Wert in der DB inkrementieren, wenn das Skript aufgerufen wird
Bei meinem derzeitigen Ansatz ändert sich die Nummer jedoch nicht. Der Wert ist derzeit 0
, und ich habe 3
Beiträge markiert, dh total_flagged
sollte gleich 3 sein, aber es bleibt bei 0 (keine Änderung).
Hier ist mein Ansatz:
$currentMonth = date('F'); // get month realtime
$currentYear = date ('Y'); // get year realtime
$check_month = mysqli_query ($connect, "SELECT * FROM monthly_flagged");
$get_month = mysqli_fetch_array ($check_month);
$month = $get_month['month'];
$year = $get_month['year'];
$total_flagged = $get_month['total_flagged'];
// check if row exists in db for current month/year, else make it.
$checking_row = mysqli_query($connect, "SELECT * FROM monthly_flagged WHERE month = '$currentMonth' AND year = '$currentYear' LIMIT 1");
$check_return = mysqli_num_rows ($checking_row);
if ($check_return == 0){
$make_row = mysqli_query ($connect, "INSERT INTO monthly_flagged VALUES ('', '$currentMonth', '$currentYear', '')");
}
if ($check_return == 1){
$plusOne = $total_flagged +1;
$update_total_flagged = mysqli_query ($connect, "UPDATE monthly_flagged WHERE month = '$currentMonth' AND year = '$currentYear'
SET total_flagged = '$plusOne'");
}
nur ein Tipp: 'SET total_flagged = total_flagged + 1' –
Versuchen Sie' if ($ check_return == 1) 'in' if ($ check_return> 0) 'zu ändern und sehen Sie, ob es dann ausgelöst wird. –
@Dagon - Ich versuchte zunächst diesen Ansatz, SET total_flagged = '$ total_flagged' + 1', aber, nie einen solchen Ansatz verwendet, und als es nie funktioniert hat, führte ich zu meinem aktuellen Ansatz – Freddy