Toon posts:

[php/MySQL] automatisch de goede url..

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik ben mijn filmsite aan het maken in php/mysql en gaat aardig maar als newbie met deze shit wel wat vragen.

Ik heb nu een form gemaakt waarmee ik steeds nieuwe films kan toevoegen (en tijd/omschrijving enz) nu wil ik dat je in die form de goede zender kan aanvinken (of met zon list box) en dan als ik mijn films opvraag die automatisch de juiste url bij de juiste zender linkt.

heb wat zitten klooien met if statments in mijn "lees.php3" (de lijst van films dus) dat lukt maar word een enorme zooi in me code met al die if'jes:

if ($zender == "rtl4"){
$film="http://www.rtl4.nl";
}

if ($zender == "ned2"){
$ifilm="http://www.ned2.nl";
}
echo "<a href=\"$film/\" target=\"_blank\"><font size=\"1\" face=\"verdana, arial\">$zender</font></a></td>";


en dan moeten er dus nog een hele zooi bij.dit moet beter/sneller/overzichtelijker kunnen...iemand een tip?

  • Gilles
  • Registratie: Februari 2000
  • Laatst online: 28-07-2025
Ehhhh.. Als je met php/mysql kan omgaan lijkt me dat toch niet echt een probleem he? Of heb je dat vorige systeem gewoonr rechtstreeks van iemand gekopieerd of zo???

Verwijderd

Topicstarter
Op maandag 05 maart 2001 00:01 schreef gilles het volgende:
Ehhhh.. Als je met php/mysql kan omgaan lijkt me dat toch niet echt een probleem he? Of heb je dat vorige systeem gewoonr rechtstreeks van iemand gekopieerd of zo???
newbie???en nee....tis meer dat wat ik nu heb ik 2 dagen ben bezig geweest..

zeg jij dan ff hoe het aan te pakken...

  • cyco2437
  • Registratie: Januari 2001
  • Laatst online: 13-09-2025
een case statement, ken je dat?

ik weet zo niet hoe die werkt in PHP, maar dat is zeker de moeite waard om if'jes te voorkomen, wach ff ik zoek nu in de manual.
ok gevonden hier is ie ;)

if ($i == 0) {
print "i equals 0";
}
if ($i == 1) {
print "i equals 1";
}
if ($i == 2) {
print "i equals 2";
}

switch ($i) {
case 0:
print "i equals 0";
break;
case 1:
print "i equals 1";
break;
case 2:
print "i equals 2";
break;
}


check ff http://php3.de voor de manual schilt weer andere mensen lastig vallen terwijl het er letterlijk instaat :)
niet lullig bedoelt maar ik denk dat je andere mensen zo meer te vriend houd

Better to be pissed off than pissed on .... :)


  • Gilles
  • Registratie: Februari 2000
  • Laatst online: 28-07-2025
Ehhhh.. die case statements lijken me niet echt perfect oplossing hoor :)
Gewoon een tabel in je mysql db maken met een kolom Naam en een kolum Url en dan
PHP:
1
2
3
<?
$url=mysql_result(mysql_query("SELECT url FROM zenders WHERE naam='$naam'"),0);
?>

Ik ga er wel vanuit dat je op je mysql server geconnect zit natuurlijk. Maar in dit geval geld ook echt RTFM hoor. Kom niet meteen met moeilijke dingen, zoek het gewoon stap voor stap zelf uit dan snap je het allemaal het best.

  • Sjaaky
  • Registratie: Oktober 2000
  • Laatst online: 26-01 10:15
Dit probleem kan je op verschillende manieren oplossen:

1) met if en else statements

2) met switch / case
De bovenstaande methoden zijn niet echt elegant. Maar gelukkig zijn er alternatieven.

3) een associatief array. In php is dit een standaard datastructuur, dus geen enkel probleem. Het werkt alsvolgt:
//init
$zenderURL["ned1"]="www.omroep.nl"
$zenderURL["ned2"]="www.omroep.nl"
$zenderURL["rtl4"]="www.rtl4.nl"
//gebruik
$film = $zenderURL[$zender]
//en dan hier ergens de link

4) Als je er toch al een database achter hebt hangen, kan je het daar in kwijt.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 15-02 09:21

Janoz

Moderator Devschuur®

!litemod

Waarom zit iedereen met php code te smijten?? Kijk eens bij de reply van gilles... Als je toch MySQL d'r bij gooit Gebruik het dan ook.. Gooi desnoods bij de zender ook nog ff een id en dan kun je in je tabel ook nog mooi opslaan waneer op welke zender welke film is.. Of wacht nog beter.. Apparte film tabel.. Wanneer op tv tabel en tvzenders tabel.. Dan kun je ooknog afvangen waneer een film meerdere keren op tv is... Tja .. standaard DB design..

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1