Avatar billede Slettet bruger
01. oktober 2001 - 17:50 Der er 11 kommentarer og
2 løsninger

Banner størrelse som variabel

Jeg kunne godt tænke mig at størrelsen på banneret også variede udtrækket fra MySQL databasen, eks. \"268x60\".
Kan man sætte en \"AND\" sætning ind et sted? Min udtræks-kode er neden for (tager i forvejen et tilfældigt banner fra databasen):
$foresp = mysql_query(\"SELECT nr,navn,img_url,url,hits,kliks,rand() as rand_col FROM banner ORDER BY rand_col LIMIT 1\");
Avatar billede mortenfn Nybegynder
01. oktober 2001 - 18:06 #1
du vi finde både et tilfældigt banner og en tilfældig størrelse i samme tabel på samme tid eller har du samme banner i flere forslellige størrelser?

;O)
Avatar billede mukke Nybegynder
01. oktober 2001 - 18:07 #2
det kræver naturligvis at du i databasen gemmer oplysningerne, men så er det jo bare to ny felter:

$foresp = mysql_query(\"SELECT nr,navn,img_url,url,hits,kliks,hojde,bredde,rand() as rand_col FROM banner ORDER BY rand_col LIMIT 1\");
Avatar billede mortenfn Nybegynder
01. oktober 2001 - 18:17 #3
et feldt er nok
Avatar billede mortenfn Nybegynder
01. oktober 2001 - 18:19 #4
$tal=split(\"x\",\"268x60\");
$h=$tal[0];
$b=$tal[1];
Avatar billede mortenfn Nybegynder
01. oktober 2001 - 18:21 #5
du kunne også lave en $xxxx=array() indeholdene størrelserne og så vælge en tilfældig med array_rand($xxxx)
Avatar billede Slettet bruger
01. oktober 2001 - 18:40 #6
Det skal ikke være en tilfældig størrelse den skal trække ud - det skal være en bestemt: Fra databasen \"size\" hvor der bl.a. er \"268x60\" og \"120x40\" ... Så skal man kunne skrive hvilken det skal være.
Avatar billede mortenfn Nybegynder
01. oktober 2001 - 19:06 #7
jammen så tilføjer du bare en kollonne mere til tabellen
Avatar billede mukke Nybegynder
01. oktober 2001 - 19:12 #8
$foresp = mysql_query(\"SELECT nr,navn,img_url,url,hits,kliks,rand() as rand_col FROM banner WHERE size=\'\" + $size + \"\' ORDER BY rand_col LIMIT 1\");
Avatar billede mortenfn Nybegynder
01. oktober 2001 - 19:29 #9
size=\'\"%$size%\"\' ORDER BY  er det ikke sådan med %
Avatar billede Slettet bruger
01. oktober 2001 - 19:47 #10
Kan jeg ikke bare sige sådan:
$foresp = mysql_query(\"SELECT nr,navn,img_url,url,hits,kliks,rand() as rand_col FROM banner WHERE size=168x120 ORDER BY rand_col LIMIT 1\");

???
Avatar billede Slettet bruger
01. oktober 2001 - 19:55 #11
$foresp = mysql_query(\"SELECT nr,navn,img_url,url,hits,kliks,rand() as rand_col FROM banner WHERE size=\'168x120\' ORDER BY rand_col LIMIT 1\");

Så virker det! Tak for hjælpen alle!
Avatar billede mukke Nybegynder
01. oktober 2001 - 19:59 #12
Hvis du ikek har brug for at det kan være forskellige størrelse samme sted i dit script, behøver du ikke at bruge en variabel til det - i så fald kan du gøre som du selv skriver, men dog med \' udenom, da der er tale om en streng:

$foresp = mysql_query(\"SELECT nr,navn,img_url,url,hits,kliks,rand() as rand_col FROM banner WHERE size=\'168x120\' ORDER BY rand_col LIMIT 1\");


mortenfn: % bruges i forbindelse med \"WHERE felt LIKE\", og svarer i den slags tilfælde til det velkendte *-wildcard. Dette er dog ikke relevant da der skal søges specifikt på strengen.

(sammenlign:
SELECT * FROM personer WHERE efternavn LIKE \'%jensen\';
med
SELECT * FROM personer WHERE efternavn = \'jensen\';

Den første kan returnere både folk med navnet \"Peter Jensen\" og \"Hans Peter Jensen\", så fremt \"Peter Jensen\" i det andet navn er gemt som efternavn, men det andet eksempel kun vil fange \"Peter Jensen\".


Avatar billede mukke Nybegynder
01. oktober 2001 - 20:00 #13
Velbekomme :)
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
Computerworld tilbyder specialiserede kurser i database-management

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