Fejl i reklame system
HejsaJeg er ved at lave et lidt advanderet reklame system til min side.
Min mysql tabel:
CREATE TABLE `mp_ads` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`type` VARCHAR( 255 ) NOT NULL ,
`direction` VARCHAR( 255 ) NOT NULL ,
`size` VARCHAR( 255 ) NOT NULL ,
`text` TEXT NOT NULL,
`keywords` TEXT NOT NULL,
`link` VARCHAR( 255 ) NOT NULL ,
`target` VARCHAR( 255 ) NOT NULL ,
`picture` VARCHAR( 255 ) NOT NULL ,
`border` VARCHAR( 255 ) NOT NULL ,
`clicks` INT( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
);
____________________________________________________________________________
Som indholder:
INSERT INTO `mp_ads` VALUES (1, 'text, picture', '!horizontal', '468*60', 'asd sad asd asd asd asd asds adas dsadasdassd asd sad asd asd as dasd as das asd as das dsad', 'text', 'http://google.dk', '_blank', 'http://www.partner-ads.com/dk/visbanner.php?partnerid=2848&bannerid=2918', '1', 1);
INSERT INTO `mp_ads` VALUES (2, 'text, picture', '!vertical', '140*350', '3423 4 324 34 546 436 456 46 45 645 645 6456 456 456 456 456 456 456 456 456 456 456 456 5 6456 54 6546', 'sjov', 'http://woox.dk', '_blank', 'http://www.partner-ads.com/dk/visbanner.php?partnerid=2848&bannerid=4372', '1', 2);
INSERT INTO `mp_ads` VALUES (3, 'text', '!', '', 'asd sad asd asd asd asd asds adas dsadasdassd asd sad asd asd as dasd as das asd as das dsad', 'text', 'http://google.dk', '_blank', 'http://www.partner-ads.com/dk/visbanner.php?partnerid=2848&bannerid=2918', '1', 1);
____________________________________________________________________________
Hvis jeg så prøver at udskrive dem med min ads.php, som ser således ud:
<?
function ads($keywords,$type,$direction) {
$keywords = explode(",", $keywords);
$ads_sql = mysql_query("SELECT * FROM mp_ads WHERE keywords IN
('".implode(",",$keywords)."') AND type LIKE '%$type%' AND direction LIKE '$direction%'")
or die(mysql_error());
if(mysql_num_rows($ads_sql) < 5) {
$query = mysql_query("SELECT * FROM mp_ads WHERE type LIKE '%$type%' AND direction LIKE
'$direction%'") or die(mysql_error());
} else {
$query = mysql_query("SELECT * FROM mp_ads WHERE keywords IN ('".implode(",",$keywords)."')
AND type LIKE '%$type%' AND direction LIKE '$direction%' LIMIT 1") or die(mysql_error());
}
$row = mysql_fetch_assoc($query);
$a = Array("id" => $row['id'], "text" => $row['text'], "picture" => $row['picture'],
"border" => $row['border'], "target" => $row['target']);
return $a;
}
?>
____________________________________________________________________________
Og udskriver det på 3 forskellige måder, hvor type og direction bliver ændret viser den kun noget på den første af dem, og den kan kun udskrive posten med id 3.
1:
$a = ads("13bbb,asd,sad,as,d,sd","text","!");
echo $a['text'].'.. <span class="menutopic"><a href="'.$style['site']['url'].'out/text/'.$a['id'].'" target="'.$a['target'].'">Læs mere</a></span>';
____________________________________________________________________________
2:
$a = ads("13bbb,asd,sad,as,d,sd","text"," ");
echo '<tr><td width="30" height="30"><img border="0" src="'.$style['site']['url'].'images/icon.sun1.gif" width="27" height="27" alt=""></td>';
echo '<td width="370" height="30"><span class="menutopic"><a href="'.$style['site']['url'].'out/text/'.$a['id'].'" target="'.$a['target'].'">'.$a['text'].'</a></span></td></tr>';
____________________________________________________________________________
3:
echo '<div align="center">';
$a = ads("13bbb,asd,sad,as,d,sd","pictures","horizontal");
echo '<a href="'.$style['site']['url'].'out/picture/'.$a['id'].'" target="'.$a['target'].'"><img width="468" height="60" src="'.$a['picture'].'" class="border'.$a['border'].'" alt=""></a>';
echo '</div>';
____________________________________________________________________________
Jeg ved godt der er meget kode at gå igennem, men regner med at min fejl ligger i ads.php, der hvor funktionen er.
Håber nogen har tid og lyst til at hjælpe, da jeg selv har gloet mig blind på koden.
