|
Posted by M. Sokolewicz on 10/04/98 11:10
Jackson Linux wrote:
> Hi,
> This:
>
> if (isset($_GET['r']) &&
> !empty($_GET['r']) &&
> ($r = intval($_GET['r'])) ){
> $r = "{$_GET['r']}"; //Set the variable $r to mean the category number
gods, that's an ugly statement... why don't you simply use $r =
$_GET['r']; ????
> $fields = '*';
> $sort = "ORDER BY cv.sort";
> } else {
> $where = '';
> $fields =
> 'cv.cv_id,cv.category,dates,cv.job_title,cv.company,cv.job,cv.sort,
> jobcat.category';
> $sort = "ORDER BY cv.sort";
> }
>
> //Make the sql based on the joining of the table and intersection table
> $sql = "
> SELECT
> cv.cv_id,cv.category,dates,cv.job_title,cv.company,cv.job,cv.sort,jobcat
> .category
> FROM cv, cvjobcats, jobcat
> WHERE cvjobcats.cv_id=cv.cv_id AND cvjobcats.jobcat_id = $r AND
> jobcat.jobcat_id=cvjobcats.jobcat_id";
>
> Works whenever there is an ?r= specified. When there is no r specified
> it chokes on
>
> WHERE cvjobcats.cv_id=cv.cv_id AND cvjobcats.jobcat_id = $r AND
> jobcat.jobcat_id=cvjobcats.jobcat_id";
>
> because there's no value to $r.
>
> it also opens me up to allowing anyone to state *anything* after the ?.
>
> So can I make an else statement which will say that if there's no r= or
> a wrong r= or even no ? at all then it should print a menu to $r's
> which actually exist in the database? How?
>
> Thanks in advance!!!
You have 3 conditions in a single expression. Split that expression up
into multiple expressions, so you can check each (or a combination of 2)
individually.
so, instead of:
if (isset($_GET['r']) && !empty($_GET['r']) && ($r = intval($_GET['r']))){
do:
if (isset($_GET['r'])) {
if(!empty($_GET['r']) && ($r = intval($_GET['r']))){
// do whatever
} else {
// something boring
}
} else {
// not set
}
Navigation:
[Reply to this message]
|