Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to delete a row from a SQL table?

I have a row that needs to be deleted from a SQL table via PHP. The table has 3 columns: id, Symbol, and Shares:

foreach ($rows as $row)
{
    if($row["Symbol"] === $_POST["symbol"])
    {
     // I tried these combinations, but none of them works:
     // $sql = ("DELETE FROM stocks WHERE id = ? $_SESSION[id]");        
     // $sql = ("DELETE row FROM stocks WHERE id = $_SESSION[id]");
     // $sql = ("DELETE * FROM stocks WHERE id = $_SESSION[id]");
     // $sql = ("DELETE id, Symbol, Shares FROM stocks WHERE id = $_SESSION[id]");
      // DELETE FROM stocks WHERE id = $_SESSION["id"];
    }
}

My program enters an if statement, which I checked. The condition is fulfilled, but the DELETE is not executed. How can I fix this?

like image 518
user3706178 Avatar asked Dec 07 '14 17:12

user3706178


1 Answers

This syntax should work in any database:

DELETE FROM stocks WHERE id = XXX

I don't know what ? $_SESSION[id] is supposed to be doing. Try without the ?:

DELETE FROM stocks WHERE id = $_SESSION[id]

That said, you should parameterize your queries rather than putting arguments into the query string.

like image 107
Gordon Linoff Avatar answered Oct 26 '22 05:10

Gordon Linoff