I am having a problem with my search script. At current it will simply search by a selected date which is a java based calendar that displays when using id='datedisplay' in the input form field below. What I want it to do is have an extra input text field box that can search for text/words within a table field. So my query would be something like Code: SELECT * FROM tbl_comments WHERE comments_date LIKE '%$search%' OR comments_content LIKE '%$textsearch%' ORDER BY comments_date DESC, comments_time DESC But now it gets tricky. I want it to work so if someone types something into the text input box, it will ignore the other input box that searches by date. And if the text input search box is empty, it will ignore the text input box and search only by the date input box.
I am assuming it's going to involve some if statements and posssible !empty and }else{ commands, I am just not 100% sure how to piece what I want together within my search code below.
Here is my form code:Code: echo "<form method='post' action='handover_index.php'>";
echo "<input type='text' name='search' id='datedisplay' style='width: 60px;' maxlength='10'> ";
echo "<input type='hidden' name='cmd' value='search' />";
echo " <input type='Submit' name='submit' value='Go!'>";
echo "</form>";
And here is my php code:Code: // ##### Search DB ##### Start ->
$str = str_replace("n", "<BR />", $str);
if (strlen($_POST["search"]) > 1 or strlen($_GET["search"]) > 1)
{
if(isset($_POST["search"])) $search=$_POST["search"];
if(isset($_GET["search"])) $search=$_GET["search"];
$result = mysql_query("SELECT * FROM tbl_comments WHERE comments_date LIKE '%$search%' ORDER BY comments_date DESC, comments_time DESC");
echo "<table width='98%' cellspacing='0' cellpadding='3' border='0'>";
$i = 0;
while($r=mysql_fetch_array($result))
{
$comments_id=$r["comments_id"];
$comments_date=$r["comments_date"];
$comments_time=$r["comments_time"];
$comments_user=$r["comments_user"];
$comments_content=str_replace("rn","
",$r[comments_content]);
$comments_updateuser=$r["comments_updateuser"];
$comments_updatedate=$r["comments_updatedate"];
$comments_updatetime=$r["comments_updatetime"];
list($thour, $tmin, $tsec) = explode(':', $comments_time);
list($uthour, $utmin, $utsec) = explode(':', $comments_updatetime);
if ($_GET[cmd]== "edit" and $_GET[comments_id] == $comments_id) {
$comments_content=str_replace("
","rn",$r[comments_content]);
echo "<tr>";
echo "<form action='handover_index.php' method='post'>";
echo "<td class='rowtxt' valign='top' width='375'><font class='rowadded'>Added</font> <font class='rowaddeddata'>$comments_date</font> <font class='rowadded'>at</font> <font class='rowaddeddata'>$comments_time</font> <font class='rowadded'>by</font> $comments_user</td>";
echo "<td class='rowtxt' valign='top' width='45'><div class='rowalign'><input type=submit name=submit value=Update><input type=hidden name=comments_id value=$comments_id></div></td>";
echo "<tr></tr>";
echo "<td class='rowtxt' valign='top' colspan='2' width='100%'><textarea name=comments_content cols='10' rows='5'>$comments_content</textarea>
</td>";
echo "</form>";
echo "</tr>";
}else{ if($i%2 == 0){
echo "<tr class='rowresult1'>";
echo "<td class='txt' valign='top' width='375'> <font class='rowadded'>Added</font> <font class='rowaddeddata'>$comments_date $thour:$tmin</font> - $comments_user";
if (!empty($comments_updateuser)) {
echo "<font size='2' color='#000000'> / </font> <font class='rowadded'> Updated</font> <font class='rowaddeddata'>$comments_updatedate $uthour:$utmin</font> - " .$comments_updateuser. "";
}
echo "</td>";
echo "<td class='rowtxt' valign='top' width='45'><div class='rowalign'><INPUT TYPE='button' name='edit' value='Edit' onClick=self.location='handover_index.php?cmd=edit&comments_id=$comments_id&search=$search'></div></td>";
echo "</tr><tr class='rowresult1'>";
echo "<td class='rowtxt' colspan='2' valign='top' width='100%'>$comments_content
";
echo "</td></tr>";
$i++;
}else{
echo "<tr class='rowresult2'>";
echo "<td class='txt' valign='top' width='375'> <font class='rowadded'>Added</font> <font class='rowaddeddata'>$comments_date $thour:$tmin</font> - $comments_user";
if (!empty($comments_updateuser)) {
echo "<font size='2' color='#000000'> / </font> <font class='rowadded'> Updated</font> <font class='rowaddeddata'>$comments_updatedate $uthour:$utmin</font> - " .$comments_updateuser. "";
}
echo "</td>";
echo "<td class='rowtxt' valign='top' width='45'><div class='rowalign'><INPUT TYPE='button' name='edit' value='Edit' onClick=self.location='handover_index.php?cmd=edit&comments_id=$comments_id&search=$search'></div></td>";
echo "</tr><tr class='rowresult2'>";
echo "<td class='rowtxt' colspan='2' valign='top' width='100%'>$comments_content
";
echo "</td></tr>";
$i++;
}
}
}
echo "</table>";
echo "
";
}else{
// ##### Search DB ##### End <-
foreach result into a single variable
Hi,I have this code... Code: [Select]foreach ($_POST['Interests'] as $interest => $value) { echo "Interests: $interest; Value: $value";}How do I store the multiple results in a
Can you help please? Php file
I have to write this php file to allow users to register their nicknames on nickservFor an IRC server, however it worked fine for a couple of years, I then upgraded from Php4 to Php5 and suddenly
pspell
using pspell, is it possible to get words that would be best in the current phrase?For example take this phrase: who is the fastest pwrson in the world?The word person was misspelled as the person
turning an array into a string then poping it into a db
Hi im just wondering how you get a requested array into a single string then pop it into the db so far i gotprint_r($_REQUEST['choice_name']);whch echosArray ( => Colour=Blue [1] =>
Multiple while loops
I have several DB queries that I know should be returning results and aren't. I have a feeling it has to do with the several while loops that should be outputting the data. One more issue is that
Any decent php formatter/beautifier/pretty printer?
Any decent php formatter/beautifier/pretty printer class/function?I found the following whilst
Generate multilayered array from string.
ok so i have a string that looks like this:Code: [Select]blog:edit_all,delete_all|users:edit_all,delete_all|settingsand i want to make a code that can take that string and put it in a multi-layered
my two tables
table1 : col1 = topicid , col2 = topictable2 : col1 = sentid, col2 = sentenceCode: require_once("includes/connection.php"); $trends = mysql_query("SELECT topicid, topic FROM
Problem with coding MySQL query
I'm having heaps of trouble getting one of my PHP/MySQL queries to work for some reason (and the funny thing is there are plenty that are identical to it all the way through the site) so I'm wondering
How to show next and prev records
Hi all,Sorry if this is simple, i'm very new to php, well, any programming language actually.My code runs a query and comes back with the results. Very rarely there may be more than one result.I have