abonnement Unibet Coolblue Bitvavo
pi_56027652
quote:
Op maandag 14 januari 2008 16:15 schreef FrozenOne23 het volgende:

[..]

Kan wel, maar dan gaat hij de volgende keer verder tellen vanaf dat nummer. Laten we zeggen dat je 2 records er in hebt staan met ID 1 en ID 2, en je voegt er een in met ID 5, dan gaat hij bij de volgende rij verder met ID 6.
ok. Het gaat bij mij om de volgorde van een aantal items. stel ik heb items met ID1 ,2 en 3, en ik wil van 3 -> 1 maken en van 1 -> 3 maken, dan gaat dat toch goed?

Hoe kan ik trouwens makkelijk checken of een rij variables een value heeft? laten we zeggen ik heb $a $b $c $d. Hoe kan ik makeklijk kijken of ze iets bevatten? Is daar een handig ding voor? met 1 tegelijk is het nog met if te doen, maar ik heb er 7, dus dat wordt een warboel! Dit is mijn functie tot nu toe:

1
2
3
4
5
6
7
8
9
10
11
<?php
function checkvalue($variable,$text)
{
    if(
$variable==''){
    echo
$text;
    }
    else{
    echo
$variable;
    }
}
?>

waarbij $text de tekst is om te weergeven of ie leeg is. functies zijn handig!

[ Bericht 15% gewijzigd door Flaccid op 14-01-2008 17:26:58 ]
pi_56027998
Ik heb een heel klein vraagje: Hoe kan ik er voor zorgen dat als iemand mijn website bezoek door http://mijnsite.nl in te tikken op http://www.mijnsite.nl terecht komt?
pi_56028107
quote:
Op maandag 14 januari 2008 17:37 schreef super-muffin het volgende:
Ik heb een heel klein vraagje: Hoe kan ik er voor zorgen dat als iemand mijn website bezoek door http://mijnsite.nl in te tikken op http://www.mijnsite.nl terecht komt?
http://www.neohide.com/ht(...)w-domain-name-prefix
htaccess + mod_rewrite
pi_56028120
quote:
Op maandag 14 januari 2008 17:37 schreef super-muffin het volgende:
Ik heb een heel klein vraagje: Hoe kan ik er voor zorgen dat als iemand mijn website bezoek door http://mijnsite.nl in te tikken op http://www.mijnsite.nl terecht komt?
Hm, bij PCExtreme kon je dat apart aangeven ergens op hun site. Dus misschien moet je even bij je hoster vragen?

Edit: Ah, er is al een ander antwoord
Michael Scott: If I were joking, you'd be laughing. Do you look like you're laughing?
Dwight K. Schrute: Impossible to say. I can't see myself.
pi_56028157
quote:
Op maandag 14 januari 2008 17:20 schreef Flaccid het volgende:

[..]

ok. Het gaat bij mij om de volgorde van een aantal items. stel ik heb items met ID1 ,2 en 3, en ik wil van 3 -> 1 maken en van 1 -> 3 maken, dan gaat dat toch goed?

Hoe kan ik trouwens makkelijk checken of een rij variables een value heeft? laten we zeggen ik heb $a $b $c $d. Hoe kan ik makeklijk kijken of ze iets bevatten? Is daar een handig ding voor? met 1 tegelijk is het nog met if te doen, maar ik heb er 7, dus dat wordt een warboel! Dit is mijn functie tot nu toe:
[ code verwijderd ]

waarbij $text de tekst is om te weergeven of ie leeg is. functies zijn handig!
Array maken en met een loop langsgaan of er lege values bijzitten.
pi_56028370
ik heb nu een stukje code:
dit is nogal rommelig gecode denk ik. Hoe kan ik dit slimmer aanpakken?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
$name
= $_POST['name'];
$title = $_POST['title'];
$shortlink = $_POST['shortlink'];
$linkname = $_POST['linkname'];
$content = $_POST['content'];
$homepage = $_POST['homepage'];
$showlink = $_POST['showlink'];

function
checkvalue($variable,$text)
{
    if(
$variable==''){
    echo
'<span class="warning">'.$text.'</span>';
    }
    else{
    echo
$variable;
    }
};

function
createrow($coltitle,$colvar)
{
    echo
'<tr>';
    echo
'<td>'.$coltitle.'</td>';
    echo
'<td>';
    
checkvalue($colvar,$coltitle.' niet ingevoerd');
    echo
'</td>';
    echo
'</tr>';

}

$varlist = array();
$varlist['name'] = 'Naam';
$varlist['title'] = 'Title';
$varlist['shortlink'] = 'Shortlink';
$varlist['linkname'] = 'Linkname';


echo
'
<table width="100%" border="0" cellspacing="0" cellpadding="0">'
;
foreach(
$varlist as $var => $caption)
{
createrow($caption,$name);
}
echo
'

</table>
'
?>


ik php nog niet zo lang

[ Bericht 2% gewijzigd door Flaccid op 14-01-2008 18:01:53 ]
pi_56028589
Ik vind 't er niet zo beroerd uit zien hoor Flaccid. Je zou wel wat meer witruimte kunnen gebruiken, bijvoorbeeld binnen je if's:

1
2
3
4
5
6
7
8
9
10
<?php
function checkvalue($variable,$text)
{
    if(
$variable=='') {
        echo 
'<span class="warning">'.$text.'</span>';
    } else {
        echo 
$variable;
    }
}
?>


De ; aan het einde van de functie hoort daar niet en de inspringing is zo wat beter. Een lijstje variabelen kun je nog zo doen:

1
2
3
4
5
6
<?php
$name      
$_POST['name'];
$title     $_POST['title'];
$shortlink $_POST['shortlink'];
$linkname  $_POST['linkname'];
?>


Meer over coding-stanards vind je hier: http://pear.php.net/manual/en/standards.php
pi_56028711
quote:
Op maandag 14 januari 2008 17:42 schreef mschol het volgende:

[..]

http://www.neohide.com/ht(...)w-domain-name-prefix
htaccess + mod_rewrite
Bedankt. Tis gelukt.
pi_56028828
quote:
Op maandag 14 januari 2008 18:09 schreef HuHu het volgende:
Ik vind 't er niet zo beroerd uit zien hoor Flaccid. Je zou wel wat meer witruimte kunnen gebruiken, bijvoorbeeld binnen je if's:
[ code verwijderd ]

De ; aan het einde van de functie hoort daar niet en de inspringing is zo wat beter. Een lijstje variabelen kun je nog zo doen:
[ code verwijderd ]

Meer over coding-stanards vind je hier: http://pear.php.net/manual/en/standards.php
bedankt voor de tips. ik had het ook over de manier waarop het geprogrammeerd is. Want nu weet ik zelf ff niet meer wat ik doe.

Dit heb ik er nu van gemaakt:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
$name         
$_POST['name'];
$title         $_POST['title'];
$shortlink     $_POST['shortlink'];
$linkname      $_POST['linkname'];
$content     $_POST['content'];
$homepage     $_POST['homepage'];
$showlink     $_POST['showlink'];

function 
checkvalue($variable,$text)
{
    if(
$variable=='')
        {
            echo 
'<span class="warning">'.$text.' niet ingevoerd</span>';
        }
    else
        {
            echo 
$variable;
        }
};

function 
createrow($coltitle,$colvar)
{
    echo 
'<tr>';
    echo 
'<td>'.$coltitle.'</td>';
    echo 
'<td>';
    
checkvalue($colvar,$coltitle);
    echo 
'</td>';
    echo 
'</tr>';

}

$varlist = array();
$varlist[$name]      = 'Naam';
$varlist[$title]      = 'Titel';
$varlist[$shortlink] = 'Shortlink';
$varlist[$linkname]     = 'Linkname';
$varlist[$content]      = 'Content';


echo
'
<table width="100%" border="0" cellspacing="0" cellpadding="0">'
;

foreach(
$varlist as $var => $caption)
    {
        
createrow($caption,$var);
    }

echo
'
  <tr>
    <td>Homepage</td>
    <td>'
;  if($homepage=='on'){echo'Ja';}else{echo'Nee';}  ;echo '</td>
  </tr>
  <tr>
    <td width="40%">Showlink</td>
    <td>'
;  if($showlink=='on'){echo'Ja';}else{echo'Nee';}  ;echo '</td>
  </tr>
  </table>
'
?>


Nu vallen al die rijen weg. :{ Heel wazig. Waarom is dat? (de tabbelrijen die die aanmaakt he)
pi_56028934
quote:
Op maandag 14 januari 2008 16:15 schreef Farenji het volgende:

[..]

Zoals ik het laatst opgelost heb: klikken op een vlaggetje laadt het script met als enige param language=blaat. Het script ziet de language param, zet de juiste taal in de sessie, en doet een redirect naar de referrer (die lees je gewoon uit uit de server vars), waar wel voor de zekerheid een evt language param uit is gefilterd (een eeuwige circulaire redirect is niet zo fijn namelijk). Op deze manier hoef je je geen zorgen te maken om eventuele andere params die al in de url staan.

Bovenaan lees je dan gewoon de taal uit uit de sessie et voila.
Uiteraard moet je controleren of de taal wel een geldige waarde krijgt. En of de referrer wel meegegeven is bij de aanroep (en naar je eigen server verwijst). De meeste waarden in $_SERVER moet je net zo wantrouwend behandelen als $_GET en $_POST.
pi_56030169
ik ben net begonnen met een phpnuke ^^ iemand tips? :p ik weet dat het een brak systeem is maar het is redelijk complex en een stuk beter dan een html site ( code die ik wel beheers) >.> iemand nog ideeen voor als ik bezig ga of proggies die ik mss kan instaleren of leuk zijn ?
Redacted
pi_56030263
1
2
3
4
5
6
7
8
9
10
<?php
    
if($variable=='')
        {
            echo 
'<span class="warning">'.$text.' niet ingevoerd</span>';
        }
    else
        {
            echo 
$variable;
        }
?>


naar

1
2
3
<?php
echo (empty($variable)) ? '<span class="warning">'.$text.' niet ingevoerd</span>' $variabele;
?>


Korter, maar minder leesbaar. Eventueel:

1
2
3
4
5
6
<?php
    
if(empty($variable))
            echo 
'<span class="warning">'.$text.' niet ingevoerd</span>';
    else
            echo 
$variable;
?>


Verder vind ik het niet netjes als functies zelf maar wat gaan echo-en, ik vind het mooier als ze een return waarde hebben. Voorbeeld:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
function checkvalue($variable,$text)
{
    if(
$variable=='')
        {
            echo 
'<span class="warning">'.$text.' niet ingevoerd</span>';
        }
    else
        {
            echo 
$variable;
        }
};
function 
createrow($coltitle,$colvar)
{
    echo 
'<tr>';
    echo 
'<td>'.$coltitle.'</td>';
    echo 
'<td>';
    
checkvalue($colvar,$coltitle);
    echo 
'</td>';
    echo 
'</tr>';

}
?>


word dan:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
function checkvalue($variable,$text)
{
    if(
$variable=='')
        {
            return 
'<span class="warning">'.$text.' niet ingevoerd</span>';
        }
    else
        {
            return 
$variable;
        }
};
function 
createrow($coltitle,$colvar)
{
    return 
'
            <tr>
              <td>'
.$coltitle.'</td>
              <td>' 
checkvalue($colvar$coltitle) . '</td>
            </tr>
    '
;
}
?>


Edit

Ook hier valt wat aan te pimpen:
1
2
3
<?php
echo ($homepage=='on') ? 'Ja' 'Nee';
?>
pi_56031990
Het enige wat er nu uit komt, uit die foreach, wat heer vaag is, is Content. De laatste uit mn array.
pi_56032556
quote:
Op maandag 14 januari 2008 19:15 schreef Geqxon het volgende:

[ code verwijderd ]

naar
[ code verwijderd ]

Korter, maar minder leesbaar. Eventueel:
[ code verwijderd ]

Verder vind ik het niet netjes als functies zelf maar wat gaan echo-en, ik vind het mooier als ze een return waarde hebben. Voorbeeld:
[ code verwijderd ]

word dan:
[ code verwijderd ]

Edit

Ook hier valt wat aan te pimpen:
[ code verwijderd ]
Ik vind het heel lelijk als er html tussen de applicatiecode staat. Die hoort daar niet. Functies geven (references naar) variabelen terug, die je vervolgens in een template object plempt. In die templates staat al je html, nergens anders. En in die templates komt weer geen php/andere applicatie logica voor.
Maar aan de andere kant is php juist ontworpen om tussen de html te staan en andersom, daarom vind ik het ook zo'n ranzig taaltje. Het zou niet moeten mogen. Dat soort praktijken zorgen voor rampzalige onderhoudbaarheid van je applicaties.
pi_56035361
Ja dat is wel zo, maar als je nog niet zo lang PHP gebruikt is dat misschien nog wat teveel van het goede vind je niet
"Reality is an illusion created by a lack of alcohol."
pi_56035501
quote:
Op maandag 14 januari 2008 20:38 schreef Farenji het volgende:

[..]

Ik vind het heel lelijk als er html tussen de applicatiecode staat. Die hoort daar niet. Functies geven (references naar) variabelen terug, die je vervolgens in een template object plempt. In die templates staat al je html, nergens anders. En in die templates komt weer geen php/andere applicatie logica voor.
Maar aan de andere kant is php juist ontworpen om tussen de html te staan en andersom, daarom vind ik het ook zo'n ranzig taaltje. Het zou niet moeten mogen. Dat soort praktijken zorgen voor rampzalige onderhoudbaarheid van je applicaties.
Mooi en aardig, maar of het in de praktijk haalbaar is? Dan zou je elk klein stukje HTML code ergens in een template hebben moeten zitten, en heb je enorm veel classes danwel objecten...
pi_56035639
Hangt een beetje van je applicatie af maar bij de meeste dingen probeer ik nu standaard frameworks te gebruiken, dan houd je het allemaal heel mooi gescheiden en echt duizend keer onderhoudbaarder.
"Reality is an illusion created by a lack of alcohol."
pi_56036650
Of je doet het als Smarty, maar dat is nog lelijker dan PHP in je opmaak:

1
2
3
4
5
6
7
8
9
{section name=outer loop=$FirstName}
{if $smarty.section.outer.index is odd by 2}
   {$smarty.section.outer.rownum} . {$FirstName[outer]} {$LastName[outer]}
{else}
   {$smarty.section.outer.rownum} * {$FirstName[outer]} {$LastName[outer]}
{/if}
{sectionelse}
   none
{/section}
pi_56037004
quote:
Op maandag 14 januari 2008 22:21 schreef Geqxon het volgende:

[..]

Mooi en aardig, maar of het in de praktijk haalbaar is? Dan zou je elk klein stukje HTML code ergens in een template hebben moeten zitten, en heb je enorm veel classes danwel objecten...
Je zult altijd wat logica nodig hebben om te bepalen wat je laat zien. Met IF-structuren en wat loopjes moet je een heel eind kunnen komen, al dan niet in combinatie met opmaakfuncties. Maar HTML en het verzamelen van data hoort niet echt bij elkaar, naar mijn mening dan.
pi_56037094
quote:
Op maandag 14 januari 2008 22:21 schreef Geqxon het volgende:

[..]

Mooi en aardig, maar of het in de praktijk haalbaar is? Dan zou je elk klein stukje HTML code ergens in een template hebben moeten zitten, en heb je enorm veel classes danwel objecten...
Uiteraard is het haalbaar, kwestie van een beetje nadenken over je applicatie, je templates goed opzetten en content goed scheiden van opmaak en structuur. Templates hoeven niet ingewikkeldere dingen te doen dan wat variabelen weer te geven, wat simpele if/then statements en misschien een array in een loopje in html omzetten.
Het is niet moeilijk, het is een manier van denken, het wordt er juist simpeler door. JUIST beginners zouden het beste meteen zo kunnen beginnen, slechte gewoontes zijn moeilijker af te leren dan goede gewoontes aan te leren zijn.
pi_56037404
quote:
Op maandag 14 januari 2008 23:07 schreef Light het volgende:
Je zult altijd wat logica nodig hebben om te bepalen wat je laat zien. Met IF-structuren en wat loopjes moet je een heel eind kunnen komen, al dan niet in combinatie met opmaakfuncties. Maar HTML en het verzamelen van data hoort niet echt bij elkaar, naar mijn mening dan.
Dat dus
Verder vind ik Smarty een prima systeem
pi_56037517
quote:
Op maandag 14 januari 2008 17:20 schreef Flaccid het volgende:
ok. Het gaat bij mij om de volgorde van een aantal items. stel ik heb items met ID1 ,2 en 3, en ik wil van 3 -> 1 maken en van 1 -> 3 maken, dan gaat dat toch goed?
Als je de volgorde wilt bepalen moet je een kolom toevoegen om dit in te doen.
Je autoincrement id hiervoor misbruiken is een slecht plan. Records hebben een uniek ID met een reden, het is nou net niet de bedoeling dat je die gaat veranderen
pi_56037787
quote:
Op maandag 14 januari 2008 23:07 schreef Light het volgende:

[..]

Je zult altijd wat logica nodig hebben om te bepalen wat je laat zien. Met IF-structuren en wat loopjes moet je een heel eind kunnen komen, al dan niet in combinatie met opmaakfuncties. Maar HTML en het verzamelen van data hoort niet echt bij elkaar, naar mijn mening dan.
Ik ben op zich een vrij erge "MVC nazi" geworden, in de zin dat ik zelf bijv never nooit html in mijn code meer zet en die dingen gescheiden houd, maar dat ben ik niet zomaar geworden. Als je een keer een echt grote applicatie hebt moeten onderhouden en uitbouwen waar die scheiding tussen html en applicatie absoluut niet is doorgevoerd, dan word je dat vanzelf. Tering wat is dat naar. Nachtmerries heb ik er van gehad. Voor een klein scriptje of een beginnersprojectje is het niet zo van belang maar als je iets geeft om onderhoudbaarheid en uitbreidbaarheid dan is het essentieel. Maar dat zijn meestal dingen waar mensen pas later the hard way achter komen (ik ook dus).
pi_56037869
quote:
Op maandag 14 januari 2008 23:07 schreef Light het volgende:

[..]

Je zult altijd wat logica nodig hebben om te bepalen wat je laat zien. Met IF-structuren en wat loopjes moet je een heel eind kunnen komen, al dan niet in combinatie met opmaakfuncties. Maar HTML en het verzamelen van data hoort niet echt bij elkaar, naar mijn mening dan.
Wat ik in mijn geval doe:

  • Data ophalen en in diverse arrays stoppen
  • '/template/the_name_of_the_current_file.php' includen, die met de opgehaalde data een HTML pagina in elkaar zet, door constant stukjes HTML aan een object te voeren, en deze op het laatst uit te putten.

    Dit kan vast ook prima met Smarty, echter wel met een hoop overhead. Voor iets simpels is wat ik nu doe meer dan genoeg. Het ligt maar net aan de grootte van het project.
  • pi_56037950
    Maar Farenji, wat als je 'even vlug' bij elk menu-item dat begint met het woord "Maan", een zonnetje moet tonen, die geel is als de gebruiksnaam eindigt op een D, en groen als de gebruikersnaam eindigt op een T. Mag je dan niet bakken aan code aan je template gaan toevoegen?
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')