Jump to content

Stupid question


davidolson

Recommended Posts

Is this right way to make success message?

if (empty($errors)) {

    

    $query1 = "UPDATE table

                     SET `value` = `value` - :somevalue

                     WHERE `username` = :username";

    $update = $dbh->prepare($query1);

    $update->bindParam(':somevalue', $_POST['somevalue']);

    $update->bindParam(':username', $_POST['username']);

    $success = $update->execute();

    

    if ($success) {

        print "Success message!";

    }

}

And if i need to execute more than 1 query?

if (empty($errors)) {

    

    $query1 = "UPDATE table

                     SET `value` = `value` - :somevalue

                     WHERE `username` = :username";

    $update = $dbh->prepare($query1);

    $update->bindParam(':somevalue', $_POST['somevalue']);

    $update->bindParam(':username', $_POST['username']);

    $success = $update->execute();

    

    $query2 = "INSERT INTO table1 (`1`, `2`, `3`, `4`, `5`)

                  VALUES (:1, :2, :3, :4, :5)";

    $insert = $dbh->prepare($query2);

    $insert->bindParam(':1', $_POST['1']);

    $insert->bindParam(':2', $_POST['2']);

    $insert->bindParam(':3', $_POST['3']);

    $insert->bindParam(':4', $_POST['4']);

    $insert->bindParam(':5', $_POST['5']);

    $success = $insert->execute();

    

    if ($success) {

        print "Success message!";

    }

}
Link to comment
https://forums.phpfreaks.com/topic/279512-stupid-question/
Share on other sites

In your second code block, you are only really checking the success of the second query, and ignoring the first one. You should check the success of the first one, and only run the second if the first was successful (assuming they are related)

if (empty($errors)) {
    $query1 = "UPDATE table
                     SET `value` = `value` - :somevalue
                     WHERE `username` = :username";

    $update = $dbh->prepare($query1);
    $update->bindParam(':somevalue', $_POST['somevalue']);
    $update->bindParam(':username', $_POST['username']);
    $success = $update->execute();
    if ($success){    
        $query2 = "INSERT INTO table1 (`1`, `2`, `3`, `4`, `5`)
                  VALUES (:1, :2, :3, :4, :5)";

        $insert = $dbh->prepare($query2);
        $insert->bindParam(':1', $_POST['1']);
        $insert->bindParam(':2', $_POST['2']);
        $insert->bindParam(':3', $_POST['3']);
        $insert->bindParam(':4', $_POST['4']);
        $insert->bindParam(':5', $_POST['5']);

        $success = $insert->execute();
        if ($success){
            print "Success message!";
        }
    }
}
Link to comment
https://forums.phpfreaks.com/topic/279512-stupid-question/#findComment-1437653
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.