0

What is the best way to create a banner ad using information stored in a database? I have the information I was to use and already pulled from the database using PHP. How can I put this into a 460x80 banner in .gif or .png? I want to banner to shower something different from the database everytime the page is refreshed. Is this a pretty easy thing to do or require a lot of work?

4
Contributors
8
Replies
9
Views
7 Years
Discussion Span
Last Post by vaultdweller123
1

i recommend you use .png.... about the banner will it's not really hard... because you use database...all you do is some mysql query and PHP predefined function rand();

here ill show you the code
lets assume you had these table

banner
banner_id - int (primary)(autoincrement)
src = varchar

<?php

mysql_connect('localhost','root',''); // i use the default
mysql_select_db('your_database_name'); //enter your database
$sql = mysql_query("SELECT banner_id FROM banner");
$max = mysql_num_rows($sql);
$sql2 = mysql_query( "SELECT src FROM banner WHERE banner_id='".rand(1,$max)."'" );
$row = mysql_fetch_array($sql2);
echo "<img src='".$row['src']."' width='300' height='200' />";

?>

put a banner folder in your root document....
insert the images path in the src field of your banner table
ex. banner/your_images.png

0

Do you have images or urls in your DB - or just string info? If you need to create images on the fly - use GD2.
Like VD says - you can use a randomizer to display a different image each time. Over time, the number of displays should pan out.

$r = mysql_query( "SELECT urlfield FROM bannertable ORDER BY RAND() LIMIT 1");

This way you avoid the mistake of linking the number of records in the table with the 'id'. I'll explain - if the last 'id' in the table is, say 234 and the number of records in the table is only 201 (coz you deleted a few or whatever), you will never display image with an id of 234 or any number greater than 201 for than matter.

0

ur so amazing ardav... i bow to you... you always have the most proficient approach on every problems... your code are always impressive. u solve it with jus less code. and i always end up embarassed... hehe... well that's ok though... it's not ur fault to be smart.. hehe

0

Sorry VD - I'm no great shakes, but I notice that you are making an amazing contribution at the moment with so many replies - well done! It's just that I've been there and done it with some of these questions - I've had the number of records != max id number in table problem and was stuck for hours trying to figure it out. However, I think there may be an even more sophisticated way of doing it.

I'm not sure that RAND() is truly random - more a quick and dirty randomizer *I think*.

0

Sorry VD - I'm no great shakes, but I notice that you are making an amazing contribution at the moment with so many replies - well done! It's just that I've been there and done it with some of these questions - I've had the number of records != max id number in table problem and was stuck for hours trying to figure it out. However, I think there may be an even more sophisticated way of doing it.

I'm not sure that RAND() is truly random - more a quick and dirty randomizer *I think*.

There's no such thing as truly random when it comes to the implementations in PHP or MySQL, it'll always be pseudorandom

0

thanks, ill try this out and see what happens. part of my database info is text, like the users name, then the other part is a .gif file. I just want to combine these and create a clickable banner ad to promote around the web. Does this affect anything?

0

There's no such thing as truly random when it comes to the implementations in PHP or MySQL, it'll always be pseudorandom

Thanks Shawn, doubts confirmed.:)

thanks, ill try this out and see what happens. part of my database info is text, like the users name, then the other part is a .gif file. I just want to combine these and create a clickable banner ad to promote around the web. Does this affect anything?

No - fine.

Edited by diafol: n/a

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.