nathanmaxsonadil Posted July 31, 2007 Share Posted July 31, 2007 I was wondering how to have an link near the row that allows you to delete it? This is my code <?php include 'header.php'; // Works. ?> <div id="content"> <div id="columnsC"> <img style="border:0;" src="siteimg/stixy.jpg" alt="stixy"/><Br/> <p>Stixy helps users organize their world on flexible, shareable Web-based bulletin boards called Stixyboards. Unlike most personal productivity or project management software, Stixy doesn't dictate how users should organize their information. Users can create tasks, appointments, files, photos, notes, and bookmarks on their Stixyboards, organized in whatever way makes sense to them. Then they can share Stixyboards with friends, family, and colleagues.</p> </div> <div id="columnsD"> <? /** * User has already logged in, so display relavent links */ echo ' '; if($session->logged_in){ $dbh=mysql_connect ("localhost", "my_user", "my_pass") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("my_db"); if(isset($_GET['remove']) && $_GET['remove'] == '1'){ $sql = "DELETE FROM emailists WHERE stixy=('" . $session->userinfo['email'] . "')"; if($sqlres = mysql_query($sql)){ echo '<div id="mes"><ul><li>email address removed</li></ul></div>'; }else{ echo mysql_error(); } } //break if(isset($_GET['insert']) && $_GET['insert'] == 1) { $sql = "SELECT stixy FROM emailists WHERE stixy = '{$session->userinfo['email']}'"; if ($result = mysql_query($sql)) { if (!mysql_num_rows($result)) { $sql = "INSERT INTO emailists (stixy) VALUES ('" . $session->userinfo['email'] . "')"; if ($sqlres = mysql_query($sql)){ echo '<div id="mes"><ul><li>email address added</li></ul></div>'; } else { echo mysql_error(); } } else { echo "<div id='mes'><ul><li>email address already exists</li></ul></div>"; } } else { echo mysql_error(); } } $query = mysql_query("SELECT stixy FROM emailists WHERE stixy = '{$session->userinfo['email']}'"); $result = mysql_num_rows($query); if($result !== 0){ echo "<ul><li><a href='stixy.php?remove=1'>Remove yourself from the list[/url]</li></ul>"; } else { echo "<ul><li><a href='stixy.php?insert=1'>Add yourself to the list[/url]</li></ul>"; } echo "<ul>"; $sql = "SELECT stixy FROM emailists"; if ($result = mysql_query($sql)) { if (mysql_num_rows($result)) { while ($row = mysql_fetch_assoc($result)) { echo "<li>"; echo $row['stixy'] . "</li>"; } } } echo "</ul>"; } else{ ?> <p style="border-style: solid; border-width: 3px;">some text here</p> <? } ?> </div> <?php include 'sidebar.php'; ?> <div style="clear: both;"> </div> </div> <?php include 'footer.php'; // Works. ?> Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/ Share on other sites More sharing options...
nathanmaxsonadil Posted July 31, 2007 Author Share Posted July 31, 2007 bump Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312237 Share on other sites More sharing options...
nathanmaxsonadil Posted July 31, 2007 Author Share Posted July 31, 2007 Can someone help me ??? Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312252 Share on other sites More sharing options...
nathanmaxsonadil Posted July 31, 2007 Author Share Posted July 31, 2007 bump Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312375 Share on other sites More sharing options...
stlewis Posted July 31, 2007 Share Posted July 31, 2007 I believe the relevant line of code, (the bit that displays the items you'd like the delete link to appear next to), is this one? echo "<li>"; echo $row['stixy'] . "</li>"; An example of what you're trying to accomplish may be... echo "<li>".$row['stixy']." <a href='delete.php?Item=".$row['stixy']."'>delete record</a>"; Of course, the above pre-supposes that you've got a script called 'delete.php' that can take "Item" as an argument, and that will use that argument to reference the record in the database that you want to delete, and then delete it...I really hope this makes sense! Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312384 Share on other sites More sharing options...
nathanmaxsonadil Posted July 31, 2007 Author Share Posted July 31, 2007 Is there a way of having it on the same page? Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312387 Share on other sites More sharing options...
nathanmaxsonadil Posted July 31, 2007 Author Share Posted July 31, 2007 also what would the code for delete.php be? Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312389 Share on other sites More sharing options...
stlewis Posted August 1, 2007 Share Posted August 1, 2007 You could have it on the same page, but that might get a bit crowded. It would go something like this, (I'm creating my own example here, hopefully you can adapt this for yourself.) <?php if ($_SERVER['REQUEST_METHOD']=="GET" && $_GET['Item']!="") //If we are passing $GET variables to our script via a URL... //And the "Item" $GET variable is not blank, we know that the //user has clicked one of the "Delete" links. { //Create the SQL Delete Statement: $SQL="DELETE FROM stixy WHERE stixy='".$_GET['Item'}; $result=mysql_query($SQL); //Run the SQL... //Done. } echo "<li>".$row['stixy']." <a href='samepage.php?Item=".$row['stixy']."'>delete record</a>"; //We're linking to the same page we're on, but with $GET variables in our URL...see above ?> Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312396 Share on other sites More sharing options...
realjumper Posted August 1, 2007 Share Posted August 1, 2007 also what would the code for delete.php be? mysql_query("DELETE FROM table WHERE id='$id'") or die(mysql_error()); Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312398 Share on other sites More sharing options...
nathanmaxsonadil Posted August 1, 2007 Author Share Posted August 1, 2007 You could have it on the same page, but that might get a bit crowded. It would go something like this, (I'm creating my own example here, hopefully you can adapt this for yourself.) <?php if ($_SERVER['REQUEST_METHOD']=="GET" && $_GET['Item']!="") //If we are passing $GET variables to our script via a URL... //And the "Item" $GET variable is not blank, we know that the //user has clicked one of the "Delete" links. { //Create the SQL Delete Statement: $SQL="DELETE FROM stixy WHERE stixy='".$_GET['Item'}; $result=mysql_query($SQL); //Run the SQL... //Done. } echo "<li>".$row['stixy']." <a href='samepage.php?Item=".$row['stixy']."'>delete record</a>"; //We're linking to the same page we're on, but with $GET variables in our URL...see above ?> Could you make it so it echoed something if everything worked? Also I'm not very good with PHP so can you adapt it? Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312408 Share on other sites More sharing options...
nathanmaxsonadil Posted August 1, 2007 Author Share Posted August 1, 2007 Ok I integrated it into my site but you script does not work :'( Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312440 Share on other sites More sharing options...
AndyB Posted August 1, 2007 Share Posted August 1, 2007 Ok I integrated it into my site but you script does not work :'( Actually, it's your script. Beginner or not, try to solve your own problems. Post your error-free code and explain in detail what does or does not work the way you want/expect. And stop bumping your threads. if you want 'instant' help, hire someone. Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312464 Share on other sites More sharing options...
teng84 Posted August 1, 2007 Share Posted August 1, 2007 i think the last post have an idea that you need and whats the problem with that the only error i saw with the last post is this $SQL="DELETE FROM stixy WHERE stixy='".$_GET['Item'}; and i hope you know the error or maybe its not the sample uses stixy for table name and field is that the way you define it to your db can you tell us whats wrong Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312466 Share on other sites More sharing options...
MrBillybob Posted August 1, 2007 Share Posted August 1, 2007 <?php if(!$results){ echo "Didn't Work"; }else{ echo "Worked"; } ?> Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312471 Share on other sites More sharing options...
hitman6003 Posted August 1, 2007 Share Posted August 1, 2007 Here is the general idea: <?php include 'header.php'; ?> <div id="content"> <div id="columnsC"> <img style="border:0;" src="siteimg/stixy.jpg" alt="stixy"/><Br/> <p> Stixy helps users organize their world on flexible, shareable Web-based bulletin boards called Stixyboards. Unlike most personal productivity or project management software, Stixy doesn't dictate how users should organize their information. Users can create tasks, appointments, files, photos, notes, and bookmarks on their Stixyboards, organized in whatever way makes sense to them. Then they can share Stixyboards with friends, family, and colleagues. </p> </div> <div id="columnsD"> <?php if ($session->logged_in) { $dbh = mysql_connect ("localhost", "my_user", "my_pass") or die (mysql_error()); mysql_select_db ("my_db"); if (base64_decode($_GET['stixy']) != "" && $_GET['delete'] == "true") { $query = "DELETE FROM stixy WHERE stixy = '" . base64_decode($_GET['stixy']) . "'"; mysql_query($query) or die(mysql_error()); echo "Stixy " . base64_deocde($_GET['stixy']) . " was deleted!!"; } if ($_GET['remove'] == '1'){ $sql = "DELETE FROM emailists WHERE stixy = '" . $session->userinfo['email'] . "'"; if (mysql_query($sql)){ echo '<div id="mes"><ul><li>email address removed</li></ul></div>'; } else { echo mysql_error(); } } if (isset($_GET['insert']) && $_GET['insert'] == 1) { $sql = "SELECT count(stixy) FROM emailists WHERE stixy = '" . $session->userinfo['email'] . "'"; if ($result = mysql_query($sql)) { if (mysql_result($result, 0) == 0) { $sql = "INSERT INTO emailists (stixy) VALUES ('" . $session->userinfo['email'] . "')"; if (mysql_query($sql)){ echo '<div id="mes"><ul><li>email address added</li></ul></div>'; } else { echo mysql_error(); } } else { echo "<div id='mes'><ul><li>email address already exists</li></ul></div>"; } } else { echo mysql_error(); } } $result = mysql_query("SELECT COUNT(stixy) FROM emailists WHERE stixy = '" . $session->userinfo['email'] . "'"); if (mysql_result($result, 0) == 0) { echo "<ul><li><a href='stixy.php?remove=1'>Remove yourself from the list</a></li></ul>"; } else { echo "<ul><li><a href='stixy.php?insert=1'>Add yourself to the list</a></li></ul>"; } $sql = "SELECT stixy FROM emailists"; $result = mysql_query($sql) or die(mysql_error()); if (mysql_num_rows($result) > 0) { echo "<ul>"; while ($row = mysql_fetch_assoc($result)) { echo ' <li> ' . $row['stixy'] . ' <a href="' . $_SERVER['PHP_SELF'] . '?stixy=' . base64_encode($row['stixy']) . '&delete=true"' . ' onclick="return confirm(\'Are you sure?!?!\');">Delete</a> </li>'; } echo "</ul>"; } } else { echo ' <p style="border-style: solid; border-width: 3px;">some text here</p>'; } ?> </div> <?php include 'sidebar.php'; ?> <div style="clear: both;"> </div> </div> <?php include 'footer.php'; ?> Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312476 Share on other sites More sharing options...
nathanmaxsonadil Posted August 1, 2007 Author Share Posted August 1, 2007 Ok I'm now getting some error's when i got to stixy.php it gives me these Notice: Undefined index: stixy in /home/nathan/public_html/stixy.php on line 20 Notice: Undefined index: remove in /home/nathan/public_html/stixy.php on line 26 and when I say delete it says Table 'nathan_swapinvites.stixy' doesn't exist using the script that hitman6003 gave me Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312507 Share on other sites More sharing options...
hitman6003 Posted August 1, 2007 Share Posted August 1, 2007 Notices don't mean anything is really wrong...turn them off by putting error_reporting(E_ALL ^ E_NOTICE); at the top of your page. In this case, you are getting those because it's putting things into an array before the array has been defined. The other error has to do with your database. I can't help you there...the error should be fairly self explanatory. Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312509 Share on other sites More sharing options...
nathanmaxsonadil Posted August 1, 2007 Author Share Posted August 1, 2007 also now even when I dont have my email address in it still says remove yourself from the list Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312511 Share on other sites More sharing options...
trq Posted August 1, 2007 Share Posted August 1, 2007 Post your current code. Link to comment https://forums.phpfreaks.com/topic/62725-deleting-a-mysql-row-php/#findComment-312534 Share on other sites More sharing options...
Recommended Posts