Parse error: syntax error, unexpected T_ELSE in C:\wamp\www\full-iftest.php on line 41
What about the missing { before the else?
and by before I do ofcourse mean after.
Yay, another question, and most likely an easy one to answer. I am trying to make my thingy easier to make changes to in the future and because I am currently doing things in a retarded manner I want to change things.
I currently have a few separate pages/files to show entries in certain ways
full.php - standard single entry based on id
full5.php - as above but 5 entries
fullc.php - pulls single entry based on code
fullr.php - pulls single entry based on lab book ref
I realise this is very much the wrong way to do things, hence why I want to change it.
I currently decide things things based on using $_GET
.....php?id=xxx
.....php?code=ATxxx
.....php?ref=ATrxxx
I have easily got rid of the one to pull 5 entries so that's not a problem. I want to now combine all the others so I can for example use any of these:
full.php?id=xxx
full.php?code=ATxxx
full.php?ref=ATrxxx
I use these to get the values:
$tableid = $_GET['id'];
$tablecode = $_GET['code'];
$ref = $_GET['ref'];
But how do I now tell it to fetch the record based on which is actually present?
There will only ever be one of those there at any one time. I assume using some sort of if else null statements would sort it but I'm not sure how to go about it.
$get = $_GET['get']; if $get == ('AT###') {$query = "SELECT * FROM nmr WHERE code = $ref LIMIT $ent ";} else if $get == ("ATr###") {$query = "SELECT * FROM nmr WHERE labbookref = $ref ";} else $get == ("###") {$query = "SELECT * FROM nmr WHERE id >= $ref LIMIT $ent ";}
preg_match ( /^(ATr?)?(.*)$/ , $get , $groups ); $ref= $groups[2]; $query = "SELECT * FROM nmr "; switch( $groups[1] ) { case 'AT': $query .= "WHERE code = $ref"; break; case 'ATr': $query .= "WHERE labbookref = $ref"; break; default: $query .= "WHERE id >= $ref"; break; } $query .= "LIMIT $ent";
$get = $_GET['get']; $ent= $_GET['ent']+1; $grab = $_GET['grab']; if ($get == "a") {$query = "SELECT * FROM nmr WHERE id >= '$grab' LIMIT $ent ";} if ($get == "b") {$query = "SELECT * FROM nmr WHERE code = '$grab' LIMIT $ent ";} if ($get == "c") {$query = "SELECT * FROM nmr WHERE labbookref = '$grab' ";}
date | day | month | year | dayofweek | weight |
2010-08-03 | 03 | August | 2010 | Tuesday | 82.5 |
$month = $_GET['month']; $year = $_GET['year'];
$sql="SELECT * FROM weight WHERE month='$month' & year='$year' OR year='$year'";
You'll need to check whether month is set and if so use the month & year query and if not just query on the year.
I don't think it's reasonably doable in a single statement.
i.e.
if ($month != "") {
$sql="SELECT * FROM weight WHERE month='$month' & year='$year';
} else {
$sql="SELECT * FROM weight WHERE year='$year'";
}
(although someone may well have a cleverer solution)
$sql="SELECT * FROM weight WHERE year='$year'"; if ($month != "") $sql .= "AND month='$month'";
SELECT * FROM weight WHERE month='August' AND year='2010' OR year='2010'
SELECT * FROM weight WHERE year='2010'
SELECT * FROM weight WHERE (month='August' AND year='2010') OR year='2011'
if (isset($_GET['month'], $_GET['year'])) { $month = mysql_escape_string($month); $year = mysql_escape_string($year); $sql = "SELECT * FROM weight WHERE month = '$month' AND year = '$year'"; } else if (isset($_GET['month'])) { $month = mysql_escape_string($month); $sql = "SELECT * FROM weight WHERE month = '$month'"; } else if (isset($_GET['year'])) { $year = mysql_escape_string($year); $sql = "SELECT * FROM weight WHERE year = '$year'"; } $result = mysql_query($sql);
<input type="text" id="year" value="Enter Year"/> <button type="button" onclick="location.href='./date.php?year='+document.getElementById('year').value;">Go To</button></div>
<input type="text" id="month" value="Enter Month"/> <input type="text" id="year1" value="Enter Year"/> <button type="button" onclick="location.href='./date.php?month='+document.getElementById('month').value'&year='+document.getElementById('year1').value;">Go To</button
What's this mysql_escape_string chap and what does it do for me?
(As I'm sure you're aware you code works perfectly well also :D )
<form action="./date.php" method="get"> <input type="text" id="year" name="year" value="Enter Year" /> <button type="submit">Go To</button> </form> <form action="./date.php" method="get"> <input type="text" id="month" name="month" value="Enter Month/> <input type="text" id="year1" name="year" value="Enter Year" /> <button type="submit">Go To</button> </form>