On Wed, Mar 31, 2010 at 8:46 AM, Ashley Sheridan <ash@xxxxxxxxxxxxxxxxxxxx> wrote: > On Wed, 2010-03-31 at 16:50 +0430, Parham Doustdar wrote: > >> Andre, >> The @ operator is used for error catching statements. When you put: >> >> @mysql_connect('localhost', 'username', 'password') or die('Could not >> connect.'); >> >> If PHP fails to make a connection, the script execution is stopped, and the >> error message between the apostrophes is given. >> >> And, I found out what the problem was; I should have put: >> >> if (mysql_num_rows($result)) >> >> rather than just >> >> if ($result) >> >> Thanks! >> ----- Original Message ----- >> From: "Andre Polykanine" <andre@xxxxxxxx> >> To: "Parham Doustdar" <parham90@xxxxxxxxx> >> Cc: <php-general@xxxxxxxxxxxxx> >> Sent: Wednesday, March 31, 2010 4:41 PM >> Subject: Re: MySQL query not working! >> >> >> > Hello Parham, >> > >> > Adding to Ash's question, why to use the @ operator before >> > mysql_query? >> > -- >> > With best regards from Ukraine, >> > Andre >> > Skype: Francophile; Wlm&MSN: arthaelon @ yandex.ru; Jabber: arthaelon @ >> > jabber.org >> > Yahoo! messenger: andre.polykanine; ICQ: 191749952 >> > Twitter: m_elensule >> > >> > ----- Original message ----- >> > From: Parham Doustdar <parham90@xxxxxxxxx> >> > To: php-general@xxxxxxxxxxxxx <php-general@xxxxxxxxxxxxx> >> > Date: Wednesday, March 31, 2010, 2:50:07 PM >> > Subject: MySQL query not working! >> > >> > Hi there, >> > Here is a snippet of code... that doesn't work for some reason. Please >> > note >> > that I have put some >> > >> > @mysql_query($query) or die(mysql_error()); >> > >> > statements, to see if MySQL gives an error. I receive nothing other than >> > the >> > file starting to download. This is supposed to be a file download counter: >> > >> > [code] >> > <?php >> > //connect to the DB >> > mysql_connect() //There is no problem with the connection so I didn't >> > include the complete code. >> > >> > //The table where the hits are stored. >> > $table = "files"; >> > >> > $query = "select * from " . $table . " where filename = '" . $_GET['file'] >> > . >> > "'"; >> > $result = mysql_query($query); >> > >> > if ($result) //Has the file previously been added? >> > { >> > $query = "update " . $table . " set hits = hits + 1 where filename = '" . >> > $_GET['file'] . "'"; >> > @mysql_query($query) or die(mysql_error()); >> > header('location:http://www.qwitter-client.net/' . $_GET['file']); >> > } >> > else //it's the first time we're adding this file to the DB. >> > { >> > $query = "insert into " . $table . " (filename, hits) values ('" . >> > $_GET['file'] . "', 1)"; >> > @mysql_query($query) or die(mysql_error()); >> > header('location:http://www.qwitter-client.net/' . $_GET['file']); >> > } >> > ?> >> > >> > >> > >> > -- >> > PHP General Mailing List (http://www.php.net/) >> > To unsubscribe, visit: http://www.php.net/unsub.php >> > >> >> > > > My understanding of the @ here would be that PHP won't register the > error, so it won't ever die() > > Thanks, > Ash > http://www.ashleysheridan.co.uk > > > Nope. All it does is suppress the error message. Just try it: <?php @mysql_connect('localhost', 'baduser', 'badpassword') or die('Could not connect'); ?> Output: Could not connect <?php @mysql_connect('localhost', 'baduser', 'badpassword') or die('Could not connect'); ?> Output: <br /> <b>Warning</b>: mysql_connect() [<a href='function.mysql-connect'>function.mysql-connect</a>]: Can't connect to MySQL server on 'localhost' (10061) in <b>PHPDocument1</b> on line <b>3</b><br /> Could not connect Andrew -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php