How do I return result of mysql row deletion

How do I return result of mysql row deletion

am 13.08.2007 19:53:18 von Big Moxy

Can someone please advise me on how to implement this?

The data entered by a user on form 1 on page1.php is posted to
delete.php to remove that row from a table. After the SQL operation
the user is returned to page1.php.

How can I determine the success or failure of the SQL operation so I
can display an appropriate response message to the user?

Thank you!

Re: How do I return result of mysql row deletion

am 13.08.2007 19:56:02 von luiheidsgoeroe

On Mon, 13 Aug 2007 19:53:18 +0200, Big Moxy wrote:

> Can someone please advise me on how to implement this?
>
> The data entered by a user on form 1 on page1.php is posted to
> delete.php to remove that row from a table. After the SQL operation
> the user is returned to page1.php.
>
> How can I determine the success or failure of the SQL operation so I
> can display an appropriate response message to the user?

mysql_affected_rows() will tell you how many rows are affected by the
DELETE statement. Store the success or failure in a session at delete.php,
read it out in page1.php.
--
Rik Wasmus

Re: How do I return result of mysql row deletion

am 13.08.2007 20:44:16 von burgermeister01

On Aug 13, 12:53 pm, Big Moxy wrote:
> Can someone please advise me on how to implement this?
>
> The data entered by a user on form 1 on page1.php is posted to
> delete.php to remove that row from a table. After the SQL operation
> the user is returned to page1.php.
>
> How can I determine the success or failure of the SQL operation so I
> can display an appropriate response message to the user?
>
> Thank you!

Another option is this:
mysql_query() will return false if an error occurs, so if you put your
execute statement in an if statement as following you can get a
boolean success/failure response:
if(mysql_query()){
return "Yay! Success";
}else{
return "Failure";
}

Additionally, mysql_error() can tell you what went wrong.

Re: How do I return result of mysql row deletion

am 13.08.2007 21:21:11 von Big Moxy

On Aug 13, 12:44 pm, burgermeiste...@gmail.com wrote:
> On Aug 13, 12:53 pm, Big Moxy wrote:
>
> > Can someone please advise me on how to implement this?
>
> > The data entered by a user on form 1 on page1.php is posted to
> > delete.php to remove that row from a table. After the SQL operation
> > the user is returned to page1.php.
>
> > How can I determine the success or failure of the SQL operation so I
> > can display an appropriate response message to the user?
>
> > Thank you!
>
> Another option is this:
> mysql_query() will return false if an error occurs, so if you put your
> execute statement in an if statement as following you can get a
> boolean success/failure response:
> if(mysql_query()){
> return "Yay! Success";}else{
>
> return "Failure";
>
> }
>
> Additionally, mysql_error() can tell you what went wrong.

Apparently today is not my lucky day. When no row is deleted the URL
is pointing to my delete.php and not page1.php yet the browser display
seems to refresh.

BTW I got the same result with the mysql_affected_rows().

Here is a snippet of the delete.php code -

$Result1 = mysql_query($deleteSQL, $emailmanager) or
die(mysql_error());
if (mysql_query()) {
$_SESSION["mysql_query_result"] = "Your email address has been
successfully removed";
}
else {
$_SESSION["mysql_query_result"] = "Your email address was not
found. Please try again";
}
$deleteGoTo = "/casper/emailmanager.php";
if (isset($_SERVER['QUERY_STRING'])) {
$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
$deleteGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $deleteGoTo));

Re: How do I return result of mysql row deletion

am 13.08.2007 21:27:06 von Jerry Stuckle

Big Moxy wrote:
> On Aug 13, 12:44 pm, burgermeiste...@gmail.com wrote:
>> On Aug 13, 12:53 pm, Big Moxy wrote:
>>
>>> Can someone please advise me on how to implement this?
>>> The data entered by a user on form 1 on page1.php is posted to
>>> delete.php to remove that row from a table. After the SQL operation
>>> the user is returned to page1.php.
>>> How can I determine the success or failure of the SQL operation so I
>>> can display an appropriate response message to the user?
>>> Thank you!
>> Another option is this:
>> mysql_query() will return false if an error occurs, so if you put your
>> execute statement in an if statement as following you can get a
>> boolean success/failure response:
>> if(mysql_query()){
>> return "Yay! Success";}else{
>>
>> return "Failure";
>>
>> }
>>
>> Additionally, mysql_error() can tell you what went wrong.
>
> Apparently today is not my lucky day. When no row is deleted the URL
> is pointing to my delete.php and not page1.php yet the browser display
> seems to refresh.
>
> BTW I got the same result with the mysql_affected_rows().
>
> Here is a snippet of the delete.php code -
>
> $Result1 = mysql_query($deleteSQL, $emailmanager) or
> die(mysql_error());
> if (mysql_query()) {

Why are you calling mysql_query() again? You want to test $Result1 -
which you already did with die() (a bad choice here!).

> $_SESSION["mysql_query_result"] = "Your email address has been
> successfully removed";
> }
> else {
> $_SESSION["mysql_query_result"] = "Your email address was not
> found. Please try again";
> }
> $deleteGoTo = "/casper/emailmanager.php";
> if (isset($_SERVER['QUERY_STRING'])) {
> $deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
> $deleteGoTo .= $_SERVER['QUERY_STRING'];
> }
> header(sprintf("Location: %s", $deleteGoTo));
>

Rather:

if (mysql_query($deleteSQL,$emailmanager) && mysql_affected_rows()>0)) {
$_SESSION["mysql_query_result"] = "Your email address has been
successfully removed";
}
else {
$_SESSION["mysql_query_result"] = "Your email address was not
found. Please try again";
}

(sorry about the wrapping).

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================

Re: How do I return result of mysql row deletion

am 13.08.2007 21:29:08 von luiheidsgoeroe

On Mon, 13 Aug 2007 21:21:11 +0200, Big Moxy wrote:

> On Aug 13, 12:44 pm, burgermeiste...@gmail.com wrote:
>> On Aug 13, 12:53 pm, Big Moxy wrote:
>>
>> > Can someone please advise me on how to implement this?
>>
>> > The data entered by a user on form 1 on page1.php is posted to
>> > delete.php to remove that row from a table. After the SQL operation=

>> > the user is returned to page1.php.
>>
>> > How can I determine the success or failure of the SQL operation so =
I
>> > can display an appropriate response message to the user?
>>
>> > Thank you!
>>
>> Another option is this:
>> mysql_query() will return false if an error occurs, so if you put you=
r
>> execute statement in an if statement as following you can get a
>> boolean success/failure response:
>> if(mysql_query()){
>> return "Yay! Success";}else{
>>
>> return "Failure";
>>
>> }
>>
>> Additionally, mysql_error() can tell you what went wrong.
>
> Apparently today is not my lucky day. When no row is deleted the URL
> is pointing to my delete.php and not page1.php yet the browser display=

> seems to refresh.
>
> BTW I got the same result with the mysql_affected_rows().
>
> Here is a snippet of the delete.php code -
>
> $Result1 =3D mysql_query($deleteSQL, $emailmanager) or
> die(mysql_error());
> if (mysql_query()) {

The previous code was just an illustration. In this case it should be:

$Result1 =3D mysql_query($deleteSQL, $emailmanager);
if($Result1 && mysql_affected_rows()){

> $_SESSION["mysql_query_result"] =3D "Your email address has been
> successfully removed";
> }
> else {
> $_SESSION["mysql_query_result"] =3D "Your email address was not
> found. Please try again";
> }
> $deleteGoTo =3D "/casper/emailmanager.php";
> if (isset($_SERVER['QUERY_STRING'])) {
> $deleteGoTo .=3D (strpos($deleteGoTo, '?')) ? "&" : "?";
> $deleteGoTo .=3D $_SERVER['QUERY_STRING'];
> header(sprintf("Location: %s", $deleteGoTo));

Actually, you should try to get a full URL in the redirect (possibly by =
=

using 'http://'.$_SERVER['HTTP_HOST'].$deleteGoTo). Officially it's =

required, allthough most user agents can handle relative URL's quite wel=
l =

one shouldn't rely on it.
-- =

Rik Wasmus

Re: How do I return result of mysql row deletion

am 13.08.2007 22:54:38 von Big Moxy

On Aug 13, 1:29 pm, Rik wrote:
> On Mon, 13 Aug 2007 21:21:11 +0200, Big Moxy wrote:
> > On Aug 13, 12:44 pm, burgermeiste...@gmail.com wrote:
> >> On Aug 13, 12:53 pm, Big Moxy wrote:
>
> >> > Can someone please advise me on how to implement this?
>
> >> > The data entered by a user on form 1 on page1.php is posted to
> >> > delete.php to remove that row from a table. After the SQL operation
> >> > the user is returned to page1.php.
>
> >> > How can I determine the success or failure of the SQL operation so I
> >> > can display an appropriate response message to the user?
>
> >> > Thank you!
>
> >> Another option is this:
> >> mysql_query() will return false if an error occurs, so if you put your
> >> execute statement in an if statement as following you can get a
> >> boolean success/failure response:
> >> if(mysql_query()){
> >> return "Yay! Success";}else{
>
> >> return "Failure";
>
> >> }
>
> >> Additionally, mysql_error() can tell you what went wrong.
>
> > Apparently today is not my lucky day. When no row is deleted the URL
> > is pointing to my delete.php and not page1.php yet the browser display
> > seems to refresh.
>
> > BTW I got the same result with the mysql_affected_rows().
>
> > Here is a snippet of the delete.php code -
>
> > $Result1 = mysql_query($deleteSQL, $emailmanager) or
> > die(mysql_error());
> > if (mysql_query()) {
>
> The previous code was just an illustration. In this case it should be:
>
> $Result1 = mysql_query($deleteSQL, $emailmanager);
> if($Result1 && mysql_affected_rows()){
>
> > $_SESSION["mysql_query_result"] = "Your email address has been
> > successfully removed";
> > }
> > else {
> > $_SESSION["mysql_query_result"] = "Your email address was not
> > found. Please try again";
> > }
> > $deleteGoTo = "/casper/emailmanager.php";
> > if (isset($_SERVER['QUERY_STRING'])) {
> > $deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
> > $deleteGoTo .= $_SERVER['QUERY_STRING'];
> > header(sprintf("Location: %s", $deleteGoTo));
>
> Actually, you should try to get a full URL in the redirect (possibly by
> using 'http://'.$_SERVER['HTTP_HOST'].$deleteGoTo). Officially it's
> required, allthough most user agents can handle relative URL's quite well
> one shouldn't rely on it.
> --
> Rik Wasmus- Hide quoted text -
>
> - Show quoted text -

Well, perhaps I'm getting closer. The URL is now page1.php but now
results message is not displayed. I've passed $_SESSION variables
forward before but not back. The method I used for forward passing is

session_start();
foreach ($_POST as $key => $value) {
$_SESSION[$key] = $value;
}

I tried that but it did not work in this scenario.


Here is the delete code -

if (mysql_query($deleteSQL,$emailmanager) &&
mysql_affected_rows()>0) {
$_SESSION["mysql_query_result"] = "Your email address has been
successfully removed";
}else {
$_SESSION["mysql_query_result"] = "Your email address was not
found. Please try again";
}

$deleteGoTo = "/casper/page1.php";
if (isset($_SERVER['QUERY_STRING'])) {
$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
$deleteGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", "http://".$_SERVER['HTTP_HOST'].
$deleteGoTo));

Here is the page1 code -

$result_message = "";
if ((isset($_SESSION['mysql_query_result'])) &&
($_SESSION['mysql_query_result'] != "")) {
$result_message = $_SESSION['mysql_query_result'];
}

....


echo $result_message;
?>

Re: How do I return result of mysql row deletion

am 14.08.2007 00:54:53 von Jerry Stuckle

Big Moxy wrote:
> On Aug 13, 1:29 pm, Rik wrote:
>
> Well, perhaps I'm getting closer. The URL is now page1.php but now
> results message is not displayed. I've passed $_SESSION variables
> forward before but not back. The method I used for forward passing is
>
> session_start();
> foreach ($_POST as $key => $value) {
> $_SESSION[$key] = $value;
> }
>
> I tried that but it did not work in this scenario.
>
>
> Here is the delete code -
>
> if (mysql_query($deleteSQL,$emailmanager) &&
> mysql_affected_rows()>0) {
> $_SESSION["mysql_query_result"] = "Your email address has been
> successfully removed";
> }else {
> $_SESSION["mysql_query_result"] = "Your email address was not
> found. Please try again";
> }
>
> $deleteGoTo = "/casper/page1.php";
> if (isset($_SERVER['QUERY_STRING'])) {
> $deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
> $deleteGoTo .= $_SERVER['QUERY_STRING'];
> }
> header(sprintf("Location: %s", "http://".$_SERVER['HTTP_HOST'].
> $deleteGoTo));
>
> Here is the page1 code -
>
> $result_message = "";
> if ((isset($_SESSION['mysql_query_result'])) &&
> ($_SESSION['mysql_query_result'] != "")) {
> $result_message = $_SESSION['mysql_query_result'];
> }
>
> ...
>
>
> > echo $result_message;
> ?>
>
>

Do you have a session_start() call at the beginning of your second page,
also?

When you look at the page source in your browser, do you see the
".." in there?

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================