Avatar billede cmau Nybegynder
02. december 2005 - 21:34 Der er 1 kommentar og
1 løsning

Fejl i reklame system

Hejsa

Jeg 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.
Avatar billede cmau Nybegynder
02. december 2005 - 21:36 #1
Hov..

2 er nedenstående istedet for det jeg skrev der oppe:

echo '<div style="float:right;width:160;text-align:center;">';
$a = ads("13bbb,asd,sad,as,d,sd","pictures","vertical");
echo '<a href="'.$style['site']['url'].'out/picture/'.$a['id'].'" target="'.$a['target'].'"><img src="'.$a['picture'].'" class="border'.$a['border'].'" alt=""></a>';
echo '</div>';
Avatar billede cmau Nybegynder
02. december 2005 - 22:22 #2
LOL jeg har glemt ORDER BY RAND()

:S.. hvor dumt er det lige?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester