PDA

View Full Version : Calendar Help


jrwap
01-14-2002, 09:56 PM
First let me say that my vb has been hacked to allow the use of multiple usergroups in the calendar. Each usergroup has been named new1, new2, new3, .... , new9, and new10. The site uses a small hack that was part of vbportals that displays the current days events on the main page. Now, I want to be able to display the days events listed by usergroup. I can't seem to get it right without a MySQL error. Can anyone help?

Here is the original code which displays the public events:

// Display Today's Event's //
if ($showevents){
$events=$DB_site->query("SELECT eventid, subject, eventdate, public
FROM calendar_events
WHERE eventdate
LIKE '%-$today' AND ((userid = '$bbuserinfo[userid]' AND public = 0) OR (public = 1))");
$num_rows = mysql_num_rows($events);
if ($num_rows < 1) {
$P_noevents = "None Found";
eval ("\$todaysevents .= \"".gettemplate("P_todaysevents")."\";");
}else{
while ($event = $DB_site->fetch_array($events)) {
$P_eventsubject = htmlspecialchars($event[subject]);
$P_eventid = $event[eventid];
eval ("\$todaysevents .= \"".gettemplate("P_todaysevents")."\";");
}
}
$eventtitle="Today's Events";
}else{
$eventtitle="";
}
eval("\$P_calendar .= \"".gettemplate('P_calendar')."\";");
}

I tried with this, but it gives me an error:
// Display Today's Event's //
if ($showevents){
$events=$DB_site->query("SELECT eventid, subject, eventdate, public, event_type
FROM calendar_events
WHERE eventdate
LIKE '%-$today' AND ((userid = '$bbuserinfo[userid]' AND public = 0) OR (public = 1))");
$num_rows = mysql_num_rows($events);
while ($event = $DB_site->fetch_array($events)) {

if ($event[event_type] == 'new3'){
if ($num_rows < 1) {
$P_noevents = "None Found";
eval ("\$todaysevents .= \"".gettemplate("P_todaysevents")."\";");
}else{
$P_eventsubject3 = htmlspecialchars($event[subject]);
$P_eventid = $event[eventid];
eval ("\$todaysevents .= \"".gettemplate("P_todaysevents")."\";");
}


if ($event[event_type] == 'new4'){
if ($num_rows < 1) {
$P_noevents = "None Found";
eval ("\$todaysevents .= \"".gettemplate("P_todaysevents")."\";");
}else{
// while ($event = $DB_site->fetch_array($events)) {
$P_eventsubject4 = htmlspecialchars($event[subject]);
$P_eventid = $event[eventid];
eval ("\$todaysevents .= \"".gettemplate("P_todaysevents")."\";");
}
}
$eventtitle="Today's Events";
}else{
$eventtitle="";
}
eval("\$P_calendar .= \"".gettemplate('P_calendar')."\";");
}
Can anyone please help me through this.... I don't know MySQL well enough.

Thanks,

-JRW

Mark Hensler
01-15-2002, 03:01 AM
I haven't read your code yet... but I saw you said it gives you an error... Can you post the error? that would help

jrwap
01-15-2002, 03:47 AM
Ok, I probably should have posted the error to begin with.

Database error in vBulletin 2.2.1:

Invalid SQL: SELECT startdate,enddate,title,pagetext
FROM announcement
WHERE startdate<=1011073530 AND enddate>=1011073530
AND forumid=
ORDER BY startdate DESC
LIMIT 1
mysql error: You have an error in your SQL syntax near 'ORDER BY startdate DESC
LIMIT 1' at line 5

mysql error number: 1064

Date: Monday 14th of January 2002 10:45:30 PM
Script: http://128.241.205.98/index.php
Referer:


I get the same error no matter what I change... Hopefully someone is smart enough to figure out what I'm trying to do.

Thanks,

-JRW

Mark Hensler
01-15-2002, 10:48 PM
You have no value after forumid=
You should use quotes around your value, then if it's null, you won't get an error.

jrwap
01-15-2002, 11:52 PM
I know thats what the error says, but it only happens when the code that I posted is modified. The original code is posted first and it work, but it only posts public events. I want to post events by other usergroups....

-JRW

Mark Hensler
01-16-2002, 02:18 AM
I don't know what's causing the error. You should look over your code more closely, you have some errors in your logic.

You have:
if ($num_rows < 1) {
nested inside:
while ($event = $DB_site->fetch_array($events)) {

That's no good.

jrwap
01-16-2002, 04:03 AM
Ok, so how should I do this... hopefully you get a feeling about what Im trying to do. I just don't know exactly how to do it...

Thanks,

-JRW

Shenlong
01-16-2002, 09:12 PM
Well

1) You dont explain clearly what is your prime objective of editing the script
2) You seem to not know scripting very well, like you were using a corrupted phplearn book.

Anyway just try surfing around and asking here, and try not to hack until you get a little better, no offense if your good, im no superstar myself, trust me ;)