FOK!forum / Digital Corner / [PHP/(My)SQL] voor dummies - Deel 72
GlowMousedinsdag 12 mei 2009 @ 00:25

cd niet bijgeleverd

Als je vragen hebt over PHP/MySQL, dan zit je hier goed met een vaste kliek guru's en een groot aantal regelmatige bezoekers. Beperk je vragen niet tot "hij doet het niet" of "hij geeft een fout" - onze glazen bol is kapot en we willen graag van je weten wát er niet lukt en wélke foutmelding je precies krijgt

Vorige delen:
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, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71

Zie ook:
  • PHP Dataverwerking
  • Officiële PHP website
  • PHP Documentatie
  • MySQL Reference Manual
  • Yet Another PHP Faq
  • PHP Cheat Sheet
  • PHP5 Power Programming - boek met uitleg over OOP, Pear, XML, etc

    Tutorials:
  • W3Schools PHP
  • W3Schools SQL

    Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP
  • Mordrethdinsdag 12 mei 2009 @ 00:25
    tvp enz.
    cablegunmasterdinsdag 12 mei 2009 @ 00:58
    tvp
    Chandlerdinsdag 12 mei 2009 @ 08:46
    tijd voor pauze
    urseldinsdag 12 mei 2009 @ 09:04
    Mogguh..
    WyriHaximusdinsdag 12 mei 2009 @ 09:55
    quote:
    Op donderdag 7 mei 2009 22:19 schreef beerten het volgende:
    Weet iemand nog een goede freeware/open source teksteditor voor Windows xp?
    Highlighting, functieherkenning, accolades herkenning, regelnummering, met een soort van verkenner aan boord die een directory/filestructuur toont.

    Ik had er ooit een maar ik kan niet meer op de naam komen. Helaas...
    Heb je nog wat kunnen vinden?
    super-muffindinsdag 12 mei 2009 @ 10:39
    Als ik op Windows werk gebruik ik E als source editor Heeft alles behalve functieherkenning van eigen functie's.

    Maar TextMate is en blijft mijn favoriet
    Darkomendinsdag 12 mei 2009 @ 11:00
    quote:
    Op dinsdag 12 mei 2009 00:58 schreef cablegunmaster het volgende:
    tvp
    Chandlerdinsdag 12 mei 2009 @ 13:36
    PhpCoderIde werkt heel fijn.

    http://www.phpide.de ofzo
    beertendinsdag 12 mei 2009 @ 19:35
    quote:
    Op dinsdag 12 mei 2009 09:55 schreef WyriHaximus het volgende:

    [..]

    Heb je nog wat kunnen vinden?
    Ja, gebruik Notepad++ Werkt perfect, alleen kan ik nog geen directory/file structuur - presentatie-ding vinden voor aan de zijkant van het progje. Zodat ik snel kan switchen en zoeken naar bestanden.
    Of Notepad++ kent het niet, of ik heb de optie nog niet kunnen vinden.

    Ik ben naarstig op zoek naar een andere laptop, mijne is kapot gegaan. Heb nu een oudje met XP, vandaar de vraag naar een goede code-progje. Zodra ik een vervangende laptop heb installeer ik OpenSUSE Linux. Daar zijn zeer prettige pakketjes voor handen die ik goed ken. Windows is voor mij lang geleden... (Niet slechter overigens, vooral anders.) Is tijdelijke oplossing. Ik zoek derhalve ook niet verder naar een beter code-progje.

    Ben momenteel hard op zoek naar theorievoorbeelden/opzetjes van templatesystemen. Voor- en nadelen van diverse methodes.
    Is een beetje verloren gegaan, mijn post bij het afsluiten en openen van deel 71 naar 72.

    Iemand nog links naar topics/tutorials inzake templates?
    Lightdinsdag 12 mei 2009 @ 23:49
    quote:
    Op dinsdag 12 mei 2009 00:20 schreef cablegunmaster het volgende:

    [ code verwijderd ]

    gewoon omdat het lastig is een goed SMTP script te vinden dat goed werkt
    zal vast wel een andere manier zijn maar deze werkte als enige voor me
    Is de functie mail() niet makkelijker?
    Likkende_Lassiewoensdag 13 mei 2009 @ 09:37
    Vraagje:

    Ik begin nu met een nieuw project, wat meer talig is.
    Hoe zouden jullie de andere talen opslaan? Zelf dacht er aan om dit in een database te doen, en in te laden met memcached.... wat is jullie mening?
    Lightwoensdag 13 mei 2009 @ 10:21
    Opslaan in een database lijkt me wel handig, iedere pagina in meerdere talen opslaan. (En dan ook bedenken wat je gaat doen als een pagina niet in de gevraagde taal beschikbaar is.)

    Ik heb geen ervaring met memcached, maar wat ik erover gelezen heb is niet echt positief. Ik zou het niet gebruiken, het biedt geen prestatievoordeel.
    Likkende_Lassiewoensdag 13 mei 2009 @ 12:35
    Slechte ervaringen met memcache? Waar lees je die? Ik heb vooralsnog, alleen maar goede ervaringen hiermee!

    Maar betreffende pagina's dus in meer talen opslaan, hiermee doel ik ook op meng pagina's van html & PHP.
    Dus ook korte woorden etc.....
    Likkende_Lassiewoensdag 13 mei 2009 @ 21:04
    Niemand anders?
    Sar2007donderdag 14 mei 2009 @ 00:22
    Als ik meertalig programmeer, doe ik dit meestal met een language bestand.
    Gewoon een standaad php bestand, met variabelen erin.

    ex nl.php:
    1
    2
    3
    4
    5
    <?php
    $_LANG
    ['members'] = "Leden";
    $_LANG['welcome'] = "Welkom op deze site!";
    etc...
    ?>


    ex en.php:
    1
    2
    3
    4
    5
    <?php
    $_LANG
    ['members'] = "Members";
    $_LANG['welcome'] = "Welcome at this site!";
    etc...
    ?>
    Lightdonderdag 14 mei 2009 @ 07:18
    quote:
    Op donderdag 14 mei 2009 00:22 schreef Sar2007 het volgende:
    Als ik meertalig programmeer, doe ik dit meestal met een language bestand.
    Gewoon een standaad php bestand, met variabelen erin.

    ex nl.php:
    [ code verwijderd ]

    ex en.php:
    [ code verwijderd ]
    Dat kan idd, voor korte statische teksten. Voor volledige berichten is dat geen handige optie.

    Overigens kan de schrijfwijze $_LANG voor verwarring zorgen. Het lijkt een globale variabele, maar is dat niet.
    Lightdonderdag 14 mei 2009 @ 08:04
    quote:
    Op woensdag 13 mei 2009 12:35 schreef Likkende_Lassie het volgende:
    Slechte ervaringen met memcache? Waar lees je die? Ik heb vooralsnog, alleen maar goede ervaringen hiermee!
    Ik heb wat linkjes gevonden:
    Niet of nauwelijks snelheidsvoordeel: http://blog.tech.stylefeeder.com/2008/08/22/memcached-vs-mysql/
    Gebrek aan veiligheid: http://en.wikipedia.org/wiki/Memcached (dus ongeschikt voor shared hosting)
    Nog een snelheidsvergelijking: http://www.mysqlperforman(...)formance-comparison/
    quote:
    Maar betreffende pagina's dus in meer talen opslaan, hiermee doel ik ook op meng pagina's van html & PHP.
    Dus ook korte woorden etc.....
    Korte woorden kunnen ook in een taalbestand.
    cablegunmastervrijdag 15 mei 2009 @ 00:16
    yay vandaag excell met CSV zitten werken om het vervolgens in phpmyadmin te krijgen .
    daarna een php script gebruikt om een crosstabel te maken .

    CSV is irritant. importeren gaat 6/7x fout
    verander je niks doet hij het de 7e keer wel
    urselvrijdag 15 mei 2009 @ 09:38
    Ik heb een beetje een wazig probleem..

    We hebben een batch proces welke middels een exec functie een volledige backup van de database maakt middels de mysqldump functie

    1"c:\\MySQL\\MySQL Server\\bin\\mysqldump" -hlocalhost -uuser -ppass --all-databases >d:\\dbbackup\\backup.sql


    Echter de laatste tijd fluctueert de grootte van deze backups. Soms backupped die alleen de eerste tabel van de eerste database. Dan stopt die weer eens een keer halverwege. En met een beetje geluk backupped die toch alle databases wel eens..

    Doordat die toch wel iets doet is de result van de exec wel leeg en komt die dus ook niet in de foutafhandeling hiervan..

    De schijfruimte is er overigens meer dan ruim voldoende, dus dat kan het ook niet zijn

    Maar goed. Hoe kan ik zorgen dat die voortaan dit altijd goed doet..
    Of zijn er andere mogelijkheden?

    [EDIT]
    Mja, logisch, even de mysqldump functie vanuit de command zelf uitvoeren

    Dit levert de volgende melding op:

    1mysqldump: Couldn't execute 'SHOW TRIGGERS LIKE 'table_name'': Can't create/write to file '#sql_1c8_0.MYD' (Errcode: 13) (1)


    Maar goed, dit gebeurd dus op een random moment dat het niet werkt.

    [/EDIT]

    [ Bericht 14% gewijzigd door ursel op 15-05-2009 10:02:52 ]
    Pizzahutvrijdag 15 mei 2009 @ 11:21
    Vraagje:
    Ik werk momenteel met index.php?page=1 bijv. Dit wordt door een switch opgehaald die dan de juiste pagina include.
    Nu wil ik graag weten hoe ik die ?page=1 om kan zetten naar /titel van de pagina

    Kan iemand mij dit uitleggen?
    BrunoDvrijdag 15 mei 2009 @ 13:48
    quote:
    Op vrijdag 15 mei 2009 11:21 schreef Pizzahut het volgende:
    Vraagje:
    Ik werk momenteel met index.php?page=1 bijv. Dit wordt door een switch opgehaald die dan de juiste pagina include.
    Nu wil ik graag weten hoe ik die ?page=1 om kan zetten naar /titel van de pagina

    Kan iemand mij dit uitleggen?
    Dat zijn twee problemen in één.

    1) URL Rewriten
    In plaats van domein.nl/index.php?page=1 wil je bv. domein.nl/pagina/1/ . Dit doe je door middel van je .htaccess file. In dit specifieke geval zou die file er zo uit moeten zien:

    1
    2
    REWRITEENGINE ON
    REWRITERULE ^pagina/([^/\.]+)/$ index.php?page=$1


    Deze rewriterule zorgt ervoor dat de server elke html-request van pagina/alle_characters/ onzichtbaar omzet naar index.php?page=zelfde_characters. Zoek een goed htrewrite tutorial voor meer info.


    2. Zoeken op andere kolom in database
    Hiervoor zal je zowel je sql-query als je database lichtjes moeten aanpassen. Zo zal je een kolom (bv. dir) moeten toevoegen waarin je titels herschreven worden. Je moet deze extra kolom toevoegen omdat browsers en search engine spiders niet dol zijn op url's met spaties en/of speciale tekens. Een titel als "dé beste widgets" wordt dan "de-beste-widgets". Bouw dit gelijk even automatisch in als je een nieuwe pagina maakt. Vervolgens verander je in je query natuurlijk id = $page in dir=$page.
    WyriHaximusvrijdag 15 mei 2009 @ 14:49
    Voor de bakkers onder ons dit ebook nog niet gelezen/gezien hebben http://www.pseudocoder.co(...)vanced-cakephp-tips/ nomze.
    BaggerUserzaterdag 16 mei 2009 @ 21:06
    hmmm waarom werkt dit niet?

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $sql 
    "SELECT * FROM kalender WHERE (kalender.month='$month' AND kalender.year='$year') || (kalender.month='*' AND kalender.year='$year') || (kalender.month='$month' AND kalender.year='*') || (kalender.month='*' AND kalender.year='*')  
    JOIN
        kalendertype
    ON
        kalender.type = kalendertype.id
    ORDER BY kalender.day,kalender.vanafuur,kalender.vanafmin DESC "
    ;
    ?>


    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'JOIN kalendertype ON kalendertype.id = kalender.type ORDER BY kalender.day,kal' at line 2


    het lijkt aan de WHERE te liggen... echter als ik de join weghaal werkt die weer wel

    [ Bericht 7% gewijzigd door BaggerUser op 16-05-2009 21:11:46 ]
    GlowMousezaterdag 16 mei 2009 @ 21:16
    WHERE komt na JOIN, zie http://dev.mysql.com/doc/refman/5.0/en/select.html
    BaggerUserzaterdag 16 mei 2009 @ 21:23
    quote:
    Op zaterdag 16 mei 2009 21:16 schreef GlowMouse het volgende:
    WHERE komt na JOIN, zie http://dev.mysql.com/doc/refman/5.0/en/select.html
    stom, idd zo krijg ik geen foutmelding meer... echter pakt hij de WHERE clausule dan niet meer... (het maakt dan geen verschil meer of ik de WHERE er bij zet of niet..

    enig idee waar dit aan kan liggen/
    GlowMousezaterdag 16 mei 2009 @ 21:25
    Elke rij die je terugkrijgt, voldoet toch echt aan je WHERE.
    BaggerUserzaterdag 16 mei 2009 @ 21:32
    quote:
    Op zaterdag 16 mei 2009 21:25 schreef GlowMouse het volgende:
    Elke rij die je terugkrijgt, voldoet toch echt aan je WHERE.
    probleem opgelost, had te maken met niet ingevulde waardes in de database
    BaggerUserzaterdag 16 mei 2009 @ 22:53
    Ik haal nu op deze manier de gegevens op:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $sql 
    "SELECT kalender.link,kalender.id,kalender.day,kalender.month,kalender.year,kalender.type,kalendertype.id,kalendertype.kleur FROM kalender 
    JOIN
        kalendertype
    ON
        kalendertype.id = kalender.type
    WHERE (month='$month' AND year='$year') || (month='*' AND year='$year') || (month='$month' AND year='*') || (month='*' AND year='*')
    ORDER BY kalender.day,kalender.vanafuur,kalender.vanafmin DESC "
    ;
    ?>



    echter als ik nu kalender.id wil opvragen
    (echo $row["kalender.id"];) dan komtie altijd terug met kalendertype.id hoe kan dit ?
    Lightzondag 17 mei 2009 @ 00:27
    quote:
    Op zaterdag 16 mei 2009 22:53 schreef BaggerUser het volgende:
    Ik haal nu op deze manier de gegevens op:
    [ code verwijderd ]

    echter als ik nu kalender.id wil opvragen
    (echo $row["kalender.id"];) dan komtie altijd terug met kalendertype.id hoe kan dit ?
    Volgens mij zou $row['kalender.id'] niets mogen opleveren en moet je $row['id'] gebruiken. Als je een id van twee (of meer) tabellen leest, zul je met aliassen moeten werken.

    (Incomplete code)
    1
    2
    3
    <?php
    $sql 
    "SELECT kalender.id, kalender.type, kalendertype.id AS typeid, kalendertype.kleur FROM kalender ... ";
    ?>


    Als kalender.type en kalendertype.id gelijk zijn (volgens JOIN ... ON ... ) dan kun je je ook afvragen of je ze beide nodig hebt.
    BaggerUserzondag 17 mei 2009 @ 09:24
    quote:
    Op zondag 17 mei 2009 00:27 schreef Light het volgende:

    [..]

    Volgens mij zou $row['kalender.id'] niets mogen opleveren en moet je $row['id'] gebruiken. Als je een id van twee (of meer) tabellen leest, zul je met aliassen moeten werken.

    (Incomplete code)
    [ code verwijderd ]

    Als kalender.type en kalendertype.id gelijk zijn (volgens JOIN ... ON ... ) dan kun je je ook afvragen of je ze beide nodig hebt.

    wat jij zegt klopt, ik kon kalendertype.id weglaten bij het opvragen, deze pakt hij al door de join maar dat van alliassen wist ik niet weer wat geleerd!
    Likkende_Lassiezondag 17 mei 2009 @ 12:03
    Tot nu toe programmeer ik altijd zo dat de queries (mysql_query(), mysql_fetch_assoc()), altijd direct in de code worden meegenomen.

    Ik zie wel eens dat mensen hier handgeschreven functies voor hebben, iemand die zin heeft dit te delen?
    Likkende_Lassiezondag 17 mei 2009 @ 12:07
    Of is PDO iets http://www.websitemaken.be/index.php?page=show_item&id=643

    //edit, zojuist een oud topic gevonden, [PHP/(My)SQL] voor dummies - deel 57 - PDO

    [ Bericht 23% gewijzigd door Likkende_Lassie op 17-05-2009 12:14:23 ]
    Likkende_Lassiezondag 17 mei 2009 @ 14:11
    Ok dit snap ik dus niet:

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $query
    ['domains'][1] = $dbh->prepare("SELECT * FROM domains WHERE (domain = :domainname AND status = 1) LIMIT 1");
    $query['domains'][1]->bindParam(':domainname'$domainPDO::PARAM_STR12);
    $query['domains'][1]->execute();


    if (
    $domain_info $query['domains'][1]->fetch(PDO::FETCH_ASSOC)){
    ?>


    Ik krijg een resultaat, maarrrrr als ik de bindparam weglaat, of een foute waarde meegeef, krijg ik nog steeds resultaten uit de database

    Volgens mij doe ik niks verkeerd, maar wie weet toch??
    Likkende_Lassiemaandag 18 mei 2009 @ 09:21
    iemand?
    Chandlermaandag 18 mei 2009 @ 10:09
    Helaas Likkende_Lassie, ik ben nog niet bekend met PDO

    Verder heb ik een vraag, voor een systeem wil ik een vorige / volgende optie inbouwen om naar een vorige / volgende item te kunnen gaan zonder eerst terug naar de categorie te hoeven gaan.

    Nu doe ik dit middels 3 queries, 1 voor de huidige, dan 1 voor de vorige en 1 voor de volgende, maar volgens mij moet dit ook mogelijk zijn met 1 óf 2 queries ipv 3?

    Weet iemand of dit mogelijk is? google kon mij geen antwoorden verschaffen!
    #ANONIEMmaandag 18 mei 2009 @ 10:12
    quote:
    Op zondag 17 mei 2009 12:03 schreef Likkende_Lassie het volgende:
    Tot nu toe programmeer ik altijd zo dat de queries (mysql_query(), mysql_fetch_assoc()), altijd direct in de code worden meegenomen.

    Ik zie wel eens dat mensen hier handgeschreven functies voor hebben, iemand die zin heeft dit te delen?
    Ik gebruik een aangepaste versie van dbFacile. Erg handige class.
    wobbelmaandag 18 mei 2009 @ 11:56
    roflpantoffel oops

    [ Bericht 69% gewijzigd door wobbel op 18-05-2009 12:02:08 ]
    Likkende_Lassiemaandag 18 mei 2009 @ 12:16
    quote:
    Op maandag 18 mei 2009 10:12 schreef Scorpie het volgende:

    [..]

    Ik gebruik een aangepaste versie van dbFacile. Erg handige class.
    Ik ga er eens naar kijken, weet jij misschien het probleem van een aantal postst hierboven? Ik kom niet verder zo!

    Chandlermaandag 18 mei 2009 @ 13:28
    quote:
    Op maandag 18 mei 2009 10:09 schreef Chandler het volgende:
    Helaas Likkende_Lassie, ik ben nog niet bekend met PDO

    Verder heb ik een vraag, voor een systeem wil ik een vorige / volgende optie inbouwen om naar een vorige / volgende item te kunnen gaan zonder eerst terug naar de categorie te hoeven gaan.

    Nu doe ik dit middels 3 queries, 1 voor de huidige, dan 1 voor de vorige en 1 voor de volgende, maar volgens mij moet dit ook mogelijk zijn met 1 óf 2 queries ipv 3?

    Weet iemand of dit mogelijk is? google kon mij geen antwoorden verschaffen!
    Het kan wel middels gebruik van subqueries

    1
    2
    3
    4
    5
    6
    SELECT * 
    FROM articles 
    WHERE id IN (
        SELECT id FROM articles WHERE id > ? ORDER BY id ASC LIMIT 1)) 
    OR id IN (   
        SELECT id FROM articles WHERE id < ? ORDER BY id DESC LIMIT 1);

    maar op de server waar de site draait kan ik helaas geen subqueries gebruiken
    Pizzahutmaandag 18 mei 2009 @ 16:46
    Ik ben momenteel bezig met een archief pagina voor een website.
    Alle nieuws/blog berichten moeten als volgt komen te staan:

    Mei:
    - nieuws 1
    - nieuws 2

    April:
    - nieuws 1
    - nieuws 2

    Maart:
    - nieuws 1
    - nieuws 2

    Maar ik krijg het nu zo:

    Mei:
    - nieuws 1

    Mei:
    - nieuws 2

    April:
    - nieuws 1

    April
    - nieuws 2

    Maart:
    - nieuws 1

    Maart:
    - nieuws 2

    Iemand een oplossing?
    Tevens als de maand niet bestaat moet hij deze ook niet laten zien. en het liefst ook nog sorteren per jaar. Dus dat er 2008 of 2009 boven komt te staan.
    beertenmaandag 18 mei 2009 @ 19:09
    quote:
    Op maandag 18 mei 2009 16:46 schreef Pizzahut het volgende:...
    Post je query eens. Ik vermoed dat je even een "GROUP BY" moet toevoegen.
    Lightmaandag 18 mei 2009 @ 19:47
    quote:
    Op maandag 18 mei 2009 19:09 schreef beerten het volgende:

    [..]

    Post je query eens. Ik vermoed dat je even een "GROUP BY" moet toevoegen.
    Volgens mij gaat de query wel goed en is het gewoon een kwestie van op de juiste manier weergeven. Iedere maand maar 1 keer noemen, dus bijhouden welke maand je weergeeft.
    Pizzahutmaandag 18 mei 2009 @ 20:06
    Als ik de GROUP BY gebruik krijg ik dus de 2e.
    Ik moet dus 12 query's aanmaken? Een voor elke maand?
    Wordt het dan niet ontiegelijk langzaam?
    Lightmaandag 18 mei 2009 @ 20:38
    quote:
    Op maandag 18 mei 2009 20:06 schreef Pizzahut het volgende:
    Als ik de GROUP BY gebruik krijg ik dus de 2e.
    Ik moet dus 12 query's aanmaken? Een voor elke maand?
    Wordt het dan niet ontiegelijk langzaam?
    Van dat tweede kun je vrij eenvoudig maken wat je hebben wilt, zonder extra queries. Gewoon bijhouden welke maand je weergeeft, en als het bericht uit die maand is dan meld je de maand niet nog een keer. Als het een andere maand is, zet je de maand weer neer.
    cablegunmastermaandag 18 mei 2009 @ 21:31
    kan er geen distinct bij worden gebruikt dat hij de maanden distinct?
    dan zou de maand geval wel werken.


    SELECT DISTINCT maand FROM nieuws

    bron:
    http://www.1keydata.com/sql/sqldistinct.html
    beertenmaandag 18 mei 2009 @ 21:34
    quote:
    Op maandag 18 mei 2009 19:47 schreef Light het volgende:

    [..]

    Volgens mij gaat de query wel goed en is het gewoon een kwestie van op de juiste manier weergeven. Iedere maand maar 1 keer noemen, dus bijhouden welke maand je weergeeft.
    Post je query eens. Dit is gelul in de lucht. Jij denkt dat er geen fout zit, ik vermoed van wel. Je hebt geen codevoorbeeld, niets.
    Post je code, de query, laat ons iets zien, dan kunnen WIJ oordelen en adviseren. Daar vraag je om, maar je geeft ons geen enkel handvat.
    Lightmaandag 18 mei 2009 @ 21:43
    quote:
    Op maandag 18 mei 2009 21:34 schreef beerten het volgende:

    Daar vraag je om, maar je geeft ons geen enkel handvat.
    Ik vroeg niets
    beertenmaandag 18 mei 2009 @ 21:45
    quote:
    Op maandag 18 mei 2009 21:43 schreef Light het volgende:

    [..]

    Ik vroeg niets
    Laat maar, ik haak af. Ik was bereid je te helpen. Je bent godverdomme te lui om te knippen en te plakken. Dan niet.
    Lightmaandag 18 mei 2009 @ 21:48
    quote:
    Op maandag 18 mei 2009 21:45 schreef beerten het volgende:

    [..]

    Laat maar, ik haak af. Ik was bereid je te helpen. Je bent godverdomme te lui om te knippen en te plakken. Dan niet.
    Ja, of je leest even terug wie wat heeft gepost.
    beertenmaandag 18 mei 2009 @ 21:54
    quote:
    Op maandag 18 mei 2009 21:48 schreef Light het volgende:

    [..]

    Ja, of je leest even terug wie wat heeft gepost.
    Volgens mij moet ik je mijn excuses aanbieden. Ik haal 2 dingen door elkaar...
    Sorry, ik zie dat je WEL code hebt gepost.

    Damn, Deutsche Bratwurst brengt niet alleen mijn darmen van slag merk ik....
    Ik mis de code van de pizzahut...
    Lightmaandag 18 mei 2009 @ 22:13
    quote:
    Op maandag 18 mei 2009 21:31 schreef cablegunmaster het volgende:
    kan er geen distinct bij worden gebruikt dat hij de maanden distinct?
    dan zou de maand geval wel werken.


    SELECT DISTINCT maand FROM nieuws

    bron:
    http://www.1keydata.com/sql/sqldistinct.html
    En dan? Dan heb je een lijstje met de maanden. Niet echt nuttig.
    Lightmaandag 18 mei 2009 @ 22:15
    quote:
    Op maandag 18 mei 2009 21:54 schreef beerten het volgende:

    [..]

    Volgens mij moet ik je mijn excuses aanbieden. Ik haal 2 dingen door elkaar...
    Sorry, ik zie dat je WEL code hebt gepost.
    Kan gebeuren
    Nouja, ik heb niet echt code gepost, maar wel een duidelijk plan van aanpak.
    quote:
    Damn, Deutsche Bratwurst brengt niet alleen mijn darmen van slag merk ik....
    Ik mis de code van de pizzahut...
    Die code mis ik ook.
    cablegunmastermaandag 18 mei 2009 @ 23:34
    quote:
    Op maandag 18 mei 2009 22:13 schreef Light het volgende:

    [..]

    En dan? Dan heb je een lijstje met de maanden. Niet echt nuttig.
    alsof je daar niet een select met nieuws erbij kan halen in 1 query dat wil makkelijk
    het is maar om op een idee te brengen dat het best wil
    alleen dan anders. ken de database niet van haar
    Xcaliburmaandag 18 mei 2009 @ 23:43
    quote:
    Op donderdag 14 mei 2009 00:22 schreef Sar2007 het volgende:
    Als ik meertalig programmeer, doe ik dit meestal met een language bestand.
    Gewoon een standaad php bestand, met variabelen erin.

    ex nl.php:
    [ code verwijderd ]

    ex en.php:
    [ code verwijderd ]


    zo deed ik het vroeger, is in de praktijk rete-onpraktisch
    tegenwoordig heb ik in mijn templates-map een submapje per taal, waarin iedere template in de betreffende taal staat. Dan heb je dus in feite gewoon een HTML document per pagina in de juiste taal
    super-muffinmaandag 18 mei 2009 @ 23:48
    Ook raar. Ik heb gewoon een template voor alles, een centrale Translate class die een key => value bij houd van de huidige taal.

    Die roep ik in mijn viewController of soms zelfs in de view:
    1
    2
    $button->title = translate('actions.done');
    <a href="#eenurl"><?php echo translate('actions.done') ?></a>


    Ik kan er ook nog placeholders in de vertaalstrings plaatsen, zodat ik translate als sprintf kan gebruiken

    Willen jullie hier wat code van zien?
    Lightdinsdag 19 mei 2009 @ 00:05
    Je kunt ook GetText gebruiken in PHP. En om typwerk te besparen (liever lui dan moe ) heeft de functie gettext() een alias _().

    Ja, da's juist, een underscore als functienaam.
    Pizzahutdinsdag 19 mei 2009 @ 07:29
    Goed mijn query:
    1
    2
    3
    4
    <?php
    $query 
    = ('SELECT id, datum, titel FROM nieuws WHERE actief = 1 GROUP BY datum ORDER BY datum DESC')
        or die (
    'Query Error');
    ?>
    Xcaliburdinsdag 19 mei 2009 @ 09:18
    quote:
    Op maandag 18 mei 2009 23:48 schreef super-muffin het volgende:
    Ook raar. Ik heb gewoon een template voor alles, een centrale Translate class die een key => value bij houd van de huidige taal.

    Die roep ik in mijn viewController of soms zelfs in de view:
    [ code verwijderd ]
    Je zit dan nog steeds met het punt dat je al je tekst in variabelen moet gaan zetten, en dat vind ik nogal onpraktisch....

    Bovendien heb je met losse templates meer vrijheid qua opmaak, die nog wel eens in 1 taal moet afwijken (ivm acties, aanbiedingen, etc). Ben ik op zich nooit zo'n fan van, maar we krijgen de vraag wel vaak
    Likkende_Lassiedinsdag 19 mei 2009 @ 09:39
    Ik kan me niet voorstellen dat er niemand hier is die het antwoord op het onderstaande niet weet :)

    Ok dit snap ik dus niet:

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $query
    ['domains'][1] = $dbh->prepare("SELECT * FROM domains WHERE (domain = :domainname AND status = 1) LIMIT 1");
    $query['domains'][1]->bindParam(':domainname'$domainPDO::PARAM_STR12);
    $query['domains'][1]->execute();


    if (
    $domain_info $query['domains'][1]->fetch(PDO::FETCH_ASSOC)){
    ?>


    Ik krijg een resultaat, maarrrrr als ik de bindparam weglaat, of een foute waarde meegeef, krijg ik nog steeds resultaten uit de database :{

    Volgens mij doe ik niks verkeerd, maar wie weet toch??
    cablegunmasterdinsdag 19 mei 2009 @ 10:25
    quote:
    Op dinsdag 19 mei 2009 07:29 schreef Pizzahut het volgende:
    Goed mijn query:
    [ code verwijderd ]
    1SELECT id, distinct datum, titel FROM nieuws WHERE actief = 1 GROUP BY datum ORDER BY datum DESC


    ik zit te denken als 2 nieuws dingen op 1 dag geplaatst hebt die worden dan ook gefilterd.
    dus een herhalende query zou het moeten doen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $sql 
    "SELECT distinct datum FROM nieuws";

    $uitvoer mysql_query($sql); 
    $maand mysql_assoc_fetch($uitvoer)
    for(
    $i 012;$i++)
    {
            foreach(
    $maand == $maand){
            
    $squuel "SELECT id,datum,titel from nieuws where actief = 1 and datum = $maand
    }
    }
    ?>


    iets in deze richting geen tijd om het goed uit te werken.
    mijn advies mee blijven klooien en precies weten wat je wil doen, uitschrijven en het uitwerken
    saawdinsdag 19 mei 2009 @ 12:03
    Ik ben voor school bezig met een kalender in PHP waar je data kunt toevoegen.
    Heb ondertussen wel iets bij elkaar dat de maand goed berekent en een textarea aanmaakt maar hoe ik de tekst die je daar in vult ook daadwerkelijk in de database krijgt, die deze bij herladen ook weer uitleest, is mij een raadsel.

    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
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    <html>
      <head>
          <title>vrienden agenda</title>
        <link rel="stylesheet" type="text/css" href="kalender.css">
      </head>
      <body>
      
    <?
    if(isset($_POST['hmaand']))
    {
        $maand = $_POST['hmaand']; // Maand dat wordt ingegeven
        $jaar = $_POST['hjaar']; // Jaar dat wordt ingegeven
    }
    else
    {
        $maand = date('m'); // Maand NU
        $jaar  = date('Y'); // Jaar NU
    }

        if(isset($_POST['volgende']))
        {
            $maand++; // Volgende Maand
            if($maand == 13) // Als maand 13 is dan +1 jaar
            {
                $maand = 1;
                $jaar++; 
            }
        }

    if(isset($_POST['vorige']))
    {
        $maand--; // Vorige Maand
        if($maand == 0) // Als maand 0 is dan -1 jaar
        {
            $maand = 12;
            $jaar--;
        }
    }

        if(isset($_POST['naarvandaag'])) // Naar de Juiste maand gaan
        {
            $maand = date('m');
            $jaar  = date('Y');
        }

    $maanden = array (1 => "Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "Oktober", "November", "December"); // Maanden
    $datum   = mktime(0, 0, 0, $maand, 1, $jaar); // functie time() bereken
    $datum   = $maanden[date('n', $datum)].' '.date('Y', $datum); // Nederlandse Maand Jaar
    $srv     = $_SERVER['PHP_SELF']; // Link naar waar hij moet gaan in ons geval deze pagina
    ?>


    <form action="<? echo $srv; ?>" method="post">
    <table id="navigatie">
      <tr>
        <td><input type="submit" name="vorige" value="<<" /></td>
        <td></td>
        <td><? echo $datum; ?></td>
        <td><input type="submit" name="naarvandaag" value="Nu" /></td>
        <td><input type="submit" name="volgende" value=">>" /></td>
      </tr>
    </table>
    <input type="hidden" name="hmaand" value="<? echo $maand; ?>"/>
    <input type="hidden" name="hjaar" value="<? echo $jaar; ?>"/>
    </form>

    <?
    function eersteDagInMaand($maand, $jaar) { // Functie Eerste Dag In De Maand
        $eerste = mktime(0, 0, 0, $maand, 0, $jaar);
        $edag = date('w', $eerste);
        return $edag;
    }

    function dagenInMaand($maand, $jaar) { // Functie totaal aantal dagen in de maand
        $laatste = mktime(0, 0, 0, $maand, 1, $jaar);
        $ldag = date('t', $laatste);
        return $ldag;
    }

    function restDagen($edag, $ldag) { // De rest van de dagen de lege vakjes berkenen
        $rest = ( $edag + $ldag ) % 7;
        if($rest != 0)
        {
            $rest = 7 - $rest;
        }
        return $rest;
    }

    function printMaand($maand, $jaar) // Maand laten zien
    {
        $edag = eersteDagInMaand($maand, $jaar);
        $ldag = dagenInMaand($maand, $jaar);
        $rest = restDagen($edag, $ldag);
        $vandaag = mktime(0,0,0,date('n',time()),date('d', time()), date('Y', time()));
        $weekdag = array('Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za', 'Zo');
        
        echo "\n".'<table id="agenda"><tr>';
        foreach($weekdag as $dag)
        {
            echo '<td class="dagen">'.$dag.'</td>';
        }
        echo '</tr><tr>'."\n";
        for($i = 0; $i < ( $edag + $ldag + $rest ); $i++)
        {
            if($i < $edag || $i >= ( $edag + $ldag ))
            {
                echo '<td> </td>'."\n";
            }
            else
            {
                if(date('d', $vandaag) == ($i - ($edag - 1)) && date('m') == $maand && date('Y') == $jaar)
                {
                    echo '<td bgcolor="#651a9a">'. ($i -($edag - 1)) .'</td>'."\n";
                }
                else
                {
                   echo '<td>'. ($i -($edag - 1)) . "<textarea id='nieuwetekst'" . ($i -($edag - 1)) . "> tekstblablabla </textarea>" . '</td>'."\n";
                }
                if(($i + 1) % 7 == 0)
                {
                    echo '</tr><tr>'."\n";
                }
            }
        }
        echo '</tr></table>';
    }
    printMaand( $maand, $jaar );
    ?>
      </body>
    </html>


    Zie hier voor de css en hier voor hoe het er tot nu toe uitziet.
    Hopelijk kunnen jullie mij helpen.
    beertendinsdag 19 mei 2009 @ 12:18
    quote:
    Op dinsdag 19 mei 2009 12:03 schreef saaw het volgende:
    Ik ben voor school bezig met een kalender in PHP waar je data kunt toevoegen.
    Heb ondertussen wel iets bij elkaar dat de maand goed berekent en een textarea aanmaakt maar hoe ik de tekst die je daar in vult ook daadwerkelijk in de database krijgt, die deze bij herladen ook weer uitleest, is mij een raadsel.
    [ code verwijderd ]

    Zie hier voor de css en hier voor hoe het er tot nu toe uitziet.
    Hopelijk kunnen jullie mij helpen.
    Je probleem ligt dus bij het database-ding?
    Voorbeeld: maak een link met "toevoegen"
    Bijvoorbeeld een button.
    Als er op geklikt wordt topon je een venster met invoervelden. Naam, omschrijving, jaar, maand, dag, uur, minuut. whatever.
    Als de gebruiker op "opslaan" klikt vang je de gegevens af en stop je die in een database
    Weet je iets van mysql?
    saawdinsdag 19 mei 2009 @ 12:23
    quote:
    Op dinsdag 19 mei 2009 12:18 schreef beerten het volgende:

    [..]

    Je probleem ligt dus bij het database-ding?
    Voorbeeld: maak een link met "toevoegen"
    Bijvoorbeeld een button.
    Als er op geklikt wordt topon je een venster met invoervelden. Naam, omschrijving, jaar, maand, dag, uur, minuut. whatever.
    Als de gebruiker op "opslaan" klikt vang je de gegevens af en stop je die in een database
    Weet je iets van mysql?
    ja ik zie voor me dat die textarea's van nu klikbaar zijn zodat je kan typen [is nu ook al het geval] en dan een submit knop oid zodat het idd opgeslagen word in de database. alleen tekst, geen naam of andere data.

    ik weet vrij weinig van mysql, dat is het hele probleem

    denk dat er een database moet komen met een veldje voor de datum en een voor de tekst.
    veel verder dan dat gaat mijn gedachtengang nog niet.


    ik google me suf maar veel code's die ik tegenkom zijn onwijs ingewikkeld en dat is volgens mij helemaal niet nodig.
    alle hulp is meer dan welkom. kan eventueel ook via mail oid, wil ook weer niet het hele topic volspammen

    [ Bericht 4% gewijzigd door saaw op 19-05-2009 12:34:00 ]
    Darkomendinsdag 19 mei 2009 @ 15:33
    Mysql moet je dan wel ff mee leren werken ;-)
    maar als je deze agenda geschreven hebt moet dat ook wel lukken.
    Hier een opzetje.

    Het toevoegen doe je door de hele maand te posten via een formulier (html), geef onder elke textarea een hidden field met id en een met de datum mee.

    Die datum moet mee de database in, anders kan je het er later niet uithalen, je weet immers niet meer welke tekst bij welke datum hoort.

    na de submit loop je door de post data heen en insert je die in je database.

    Bij de dagen aanmaken selecteer je de info uit je database en echo je die in de dag.

    http://dev.mysql.com/doc/refman/5.1/en/insert.html
    http://dev.mysql.com/doc/refman/5.1/en/select.html
    saawdinsdag 19 mei 2009 @ 15:35
    het probleem met de data in de juiste dag echo'en is dus dat het niet een tabel is met daadwerkelijk de 31 dagen van de maand erin, zie code hierboven, maar een soort loopje die uitrekent hoeveel dagen er nodig zijn en zoveel cellen aanmaakt.

    wel bedankt voor de beknopte uitleg en handige linkjes!
    Darkomendinsdag 19 mei 2009 @ 16:01
    Ja maar je weet de dag, de maand en het jaar, die zet je om naar een unix timestamp

    Btw, ik ben ook maar een php-hobby-prutser :d
    Chandler, WyriHaximus, Light en lassie hebben vast veel betere ideen
    Lightdinsdag 19 mei 2009 @ 16:35
    quote:
    Op dinsdag 19 mei 2009 07:29 schreef Pizzahut het volgende:
    Goed mijn query:
    [ code verwijderd ]
    De Group By levert de problemen op. Die heb je alleen nodig als je de database wilt laten tellen hoeveel items er aan een bepaalde voorwaarde voldoen. Je krijgt dan per datum 1 rij (dat gebeurt met DISTINCT() ook, dus die moet je ook niet gebruiken) en de velden id en titel worden wel gevuld met een artikel die bij die datum hoort, maar je kunt vooraf niet voorspellen welk artikel wordt gekozen (aangenomen dat je meer artikelen op een dag hebt).

    1
    2
    3
    4
    <?php
    $query 
    = ('SELECT id, datum, titel FROM nieuws WHERE actief = 1 ORDER BY datum DESC')
        or die (
    'Query Error');
    ?>


    Zo krijg je wel alle nieuwsberichten uit de database.
    beertendinsdag 19 mei 2009 @ 17:33
    quote:
    Op dinsdag 19 mei 2009 16:01 schreef Darkomen het volgende:
    Ja maar je weet de dag, de maand en het jaar, die zet je om naar een unix timestamp

    Btw, ik ben ook maar een php-hobby-prutser :d
    Chandler, WyriHaximus, Light en lassie hebben vast veel betere ideen
    Je zou ook kunnen overwegen een .txt bestandje te gebruiken.
    Zoek maar eens op php gastenboek die zonder database werken, dus met een tekstbestand om de data in op te slaan.
    Dan heb je helemaal geen database nodig!
    super-muffindinsdag 19 mei 2009 @ 18:01
    Waarom zou je voor het opslaan van data geen database willen gebruiken?
    Opslaan als XML of YAML kan ik wel begrijpen, maar een plain text bestand is er gewoon niet voor gemaakt.
    Pizzahutwoensdag 20 mei 2009 @ 15:09
    quote:
    Op dinsdag 19 mei 2009 16:35 schreef Light het volgende:

    [..]

    De Group By levert de problemen op. Die heb je alleen nodig als je de database wilt laten tellen hoeveel items er aan een bepaalde voorwaarde voldoen. Je krijgt dan per datum 1 rij (dat gebeurt met DISTINCT() ook, dus die moet je ook niet gebruiken) en de velden id en titel worden wel gevuld met een artikel die bij die datum hoort, maar je kunt vooraf niet voorspellen welk artikel wordt gekozen (aangenomen dat je meer artikelen op een dag hebt).
    [ code verwijderd ]

    Zo krijg je wel alle nieuwsberichten uit de database.
    Ja dat weet ik, maar dan krijg ik niet:
    April
    - 1
    - 2
    Maart
    - 1
    - 2
    beertenwoensdag 20 mei 2009 @ 19:20
    quote:
    Op woensdag 20 mei 2009 15:09 schreef Pizzahut het volgende:

    [..]

    Ja dat weet ik, maar dan krijg ik niet:
    April
    - 1
    - 2
    Maart
    - 1
    - 2
    Kan je je databasestructuur voor de betreffende tabellen eens posten?
    Chandlerwoensdag 20 mei 2009 @ 20:43
    eingelijk is je vraag heel simpel saaw;

    in je HTML dien je iedere textarea te voorzien van een noemer, dit kan op 2 manieren

    textareanaam_1 of textareanaam[1], ik raad aan om de laatste te gebruiken.

    wil je een formulier submitten dan moet je een form toevoegen <form method="post" action="jescript.php">.....</form>

    Voeg hidden fields toe voor 2 gegeevns (1 maand, 1 jaar).

    <input type="hidden" name='jaar" value="2009" />
    <input type="hidden" name="maand" value="05" />

    Aan de onderkant van je tabel zet je een submit button neer.

    Dan komen we aan de html code.

    Om te kijken of je formulier is gepost kun je het beste dit gebruiken
    if ($_SERVER['REQUEST_METHOD'] == "POST") { // etc }

    etc staat voor uitvoeren van je gegevens.

    daarna controleer je of de array textareanaam bestaat met www.php.net/isset en doe je gelijk een check of het een array is met www.php.net/is_array.maar ook check je even of jaar & maand correct zijn (stel iemand zit te kutten met je formulier, nooit leuk) met bv www.php.net/is_numeric

    Beiden ok? dan kun je een www.php.net/foreach loopje gebruiken.

    Met insert gooi je gegevens in de database, daarvoor gebruiken we www.php.net/mysql_query maar controleer altijd of deze data al bestaat, dit doe je ook met www.php.net/mysql_query en www.php.net/mysql_result

    de rest moet je zelf maar even bedenken, ik ben ziek (griep) en heb verder geen zin meer om te schrijven.

    HF en mocht je er niet uitkomen, mijn Berichten Box is nog niet vol hoor maar verwacht dit weekend iig geen antwoord
    Pizzahutvrijdag 22 mei 2009 @ 14:00
    quote:
    Op woensdag 20 mei 2009 19:20 schreef beerten het volgende:

    [..]

    Kan je je databasestructuur voor de betreffende tabellen eens posten?
    id int
    catid int
    titel varchar
    door varchar
    datum timestamp
    bericht text
    tags varchar
    actief int
    WyriHaximusvrijdag 22 mei 2009 @ 21:10
    Zeg vraagje bouwt iemand van jullie wel een shell scripts in PHP? (Gewoon puur intresse aangezien het hier vooral over websites gaat.)
    GlowMousevrijdag 22 mei 2009 @ 21:13
    quote:
    Op vrijdag 22 mei 2009 21:10 schreef WyriHaximus het volgende:
    Zeg vraagje bouwt iemand van jullie wel een shell scripts in PHP? (Gewoon puur intresse aangezien het hier vooral over websites gaat.)
    Scripts die je vanaf de commandline uit moet voeren ja (veelal cronjobs), interactieve shell scripts nee.
    WyriHaximusvrijdag 22 mei 2009 @ 22:56
    quote:
    Op vrijdag 22 mei 2009 21:13 schreef GlowMouse het volgende:

    [..]

    Scripts die je vanaf de commandline uit moet voeren ja (veelal cronjobs), interactieve shell scripts nee.
    Cronjobs doe ik erg veel tegenwoordig ipv het tijdens een page request te doen werkt veel beter. Interactieve nog nooit gedaan .
    urselvrijdag 22 mei 2009 @ 23:07
    Windows Scheduled jobs..
    om rapportages er aan het eind van de dag en maand uit te spuwen bijv...
    The_Terminatorzaterdag 23 mei 2009 @ 01:00
    Iemand hier een idee:
    quote:
    Op zaterdag 23 mei 2009 00:34 schreef The_Terminator het volgende:
    Ik wou vandaag voor het eerst het script in de shell draaien maar dat ging niet goed. Ik gebruik (omdat ik PHP4 heb) cURL om de data op te halen en het uiteindelijke bericht te plaatsen. Nu lijkt het echter niet mogelijk om cURL vanuit een shellscript te draaien, er worden geen topics opgehaald.

    Iemand toevallig een idee hoe dit wel werkende te krijgen is?
    Had ik gepost in het volgende topic: Dagcijfers Actietopic! Alle hulp is welkom!
    GlowMousezaterdag 23 mei 2009 @ 01:05
    cURL zou prima moeten werken vanuit een shellscript, dus ik zou kijken waarom dat foutgaat. Het werkt niet anders dan wanneer je het script via de browser opvraagt.
    The_Terminatorzaterdag 23 mei 2009 @ 01:26
    quote:
    Op zaterdag 23 mei 2009 01:05 schreef GlowMouse het volgende:
    cURL zou prima moeten werken vanuit een shellscript, dus ik zou kijken waarom dat foutgaat. Het werkt niet anders dan wanneer je het script via de browser opvraagt.
    Het gaat fout bij cURL, daar ben ik heel zeker van. Het script print bij elke stap een regel, en nadat cURL is aangeroepen stopt hij omdat er niets is ontvangen. Ook van de init functie krijg ik niets terug... Ik heb het script nu even in een browser geopend, eens zien of dat goed gaat.

    Edit: ja, het script is nu vrolijk aan het indexeren. Ik heb ook al even ge-googled op dit probleem, maar er is weinig boeiends te vinden.
    GlowMousezaterdag 23 mei 2009 @ 01:29
    Is het dezelfde pc? En curl is wel enabled? Error Reporting staat aan? En er is geen firewall of iets anders dat verkeer blokkeert? Het lijkt me nu echt standaard debugwerk want cURL werkt uiteraard ook gewoon via de commandline mits goed ingesteld.
    The_Terminatorzaterdag 23 mei 2009 @ 01:30
    quote:
    Op zaterdag 23 mei 2009 01:29 schreef GlowMouse het volgende:
    Is het dezelfde pc? En curl is wel enabled? Error Reporting staat aan? En er is geen firewall of iets anders dat verkeer blokkeert? Het lijkt me nu echt standaard debugwerk want cURL werkt uiteraard ook gewoon via de commandline mits goed ingesteld.
    Het is dezelfde pc inderdaad. cURL vannuit een php script aanroepen gaat wel goed zolang die door Apache geserveerd wordt. Of moet er iets ingesteld worden als cURL wordt gebruikt buiten Apache om?
    Lightzaterdag 23 mei 2009 @ 02:16
    quote:
    Op zaterdag 23 mei 2009 01:00 schreef The_Terminator het volgende:
    Iemand hier een idee:
    [..]

    Had ik gepost in het volgende topic: Dagcijfers Actietopic! Alle hulp is welkom!
    Ik heb zo geen oplossing, maar is het niet handiger om PHP5 te gebruiken ipv PHP4? Als ik je posts goed begrijp, werkt het wel in PHP5.
    The_Terminatorzaterdag 23 mei 2009 @ 13:27
    quote:
    Op zaterdag 23 mei 2009 02:16 schreef Light het volgende:

    [..]

    Ik heb zo geen oplossing, maar is het niet handiger om PHP5 te gebruiken ipv PHP4? Als ik je posts goed begrijp, werkt het wel in PHP5.
    In PHP5 is cURL overbodig gezien daar al functies in zitten voor het verkrijgen of posten van data. Helaas lukt het me niet om PHP5 geinstalleerd te krijgen op mijn Suse 10 bak...
    GlowMousezaterdag 23 mei 2009 @ 13:35
    Vergelijk phpinfo() op de commandline eens met die op je webserver. Als je shelltoegang kunt geven, wil ik ook wel even zoeken.
    Lightzaterdag 23 mei 2009 @ 13:41
    quote:
    Op zaterdag 23 mei 2009 13:27 schreef The_Terminator het volgende:

    Helaas lukt het me niet om PHP5 geinstalleerd te krijgen op mijn Suse 10 bak...
    Da's vreemd. Is daar niet gewoon een of ander standaardpakket voor?
    The_Terminatorzaterdag 23 mei 2009 @ 14:36
    quote:
    Op zaterdag 23 mei 2009 13:41 schreef Light het volgende:

    [..]

    Da's vreemd. Is daar niet gewoon een of ander standaardpakket voor?
    Heb hier al veel tijd aan besteed. Hij mist bepaalde dependencies. Suse 10 is waarschijnlijk al te oud om dit werkende op te krijgen. En de server herinstalleren met een andere distro heb ik helaas geen tijd voor...
    The_Terminatorzaterdag 23 mei 2009 @ 14:42
    quote:
    Op zaterdag 23 mei 2009 13:35 schreef GlowMouse het volgende:
    Vergelijk phpinfo() op de commandline eens met die op je webserver. Als je shelltoegang kunt geven, wil ik ook wel even zoeken.
    Via de webserver:
    quote:
    CURL support enabled
    CURL Information libcurl/7.15.5 OpenSSL/0.9.7g zlib/1.2.3 libidn/0.5.9
    Via de shell:
    quote:
    curl

    CURL support => enabled
    CURL Information => libcurl/7.15.5 OpenSSL/0.9.7g zlib/1.2.3 libidn/0.5.9
    Exact hetzelfde dus...
    GlowMousezaterdag 23 mei 2009 @ 15:11
    Ik zou zeggen, probeer toch met een kleiner script te debuggen.
    The_Terminatorzaterdag 23 mei 2009 @ 15:16
    quote:
    Op zaterdag 23 mei 2009 15:11 schreef GlowMouse het volgende:
    Ik zou zeggen, probeer toch met een kleiner script te debuggen.
    Ben ik al mee bezig. Even een testcase maken en kijken wat cURL precies doet en of deze uberhaupt wordt uitgevoerd. Het lijkt er namelijk op dat cURL niet wordt uitgevoerd, gezien de init functie ook niets terug geeft...
    The_Terminatorzaterdag 23 mei 2009 @ 15:27
    Ik ben erachter waar de fout zit, namelijk bij het inlezen van de cookie... Ik heb net even het volledige pad naar de cookie opgegeven maar dat werkt ook niet, ook CHMODDEN naar 777 heeft niet mogen baten helaas...

    Edit: opgelost. Het cookie staat nu in dezelfde dir als het script zelf en nu werkt het vreemdgenoeg wel
    GlowMousezaterdag 23 mei 2009 @ 15:30
    quote:
    Op zaterdag 23 mei 2009 15:27 schreef The_Terminator het volgende:
    Ik ben erachter waar de fout zit, namelijk bij het inlezen van de cookie... Ik heb net even het volledige pad naar de cookie opgegeven maar dat werkt ook niet, ook CHMODDEN naar 777 heeft niet mogen baten helaas...
    Staat safemode aan? Zoja, dan moet je eens met chown de owner wijzigen.
    The_Terminatorzaterdag 23 mei 2009 @ 15:34
    quote:
    Op zaterdag 23 mei 2009 15:30 schreef GlowMouse het volgende:

    [..]

    Staat safemode aan? Zoja, dan moet je eens met chown de owner wijzigen.
    Zie edit. En nee, safemode is uit

    Toch bedankt voor het meedenken, ik kom er zo wel uit
    GlowMousezaterdag 23 mei 2009 @ 15:36
    quote:
    Op zaterdag 23 mei 2009 15:34 schreef The_Terminator het volgende:

    [..]

    Zie edit. En nee, safemode is uit

    Toch bedankt voor het meedenken, ik kom er zo wel uit
    Misschien had jouw user geen +x rechten op de directory waar de cookiefile eerst instond Zou niet nodig moeten zijn, maar zou wel een verklaring kunnen zijn.
    The_Terminatorzaterdag 23 mei 2009 @ 15:45
    quote:
    Op zaterdag 23 mei 2009 15:36 schreef GlowMouse het volgende:

    [..]

    Misschien had jouw user geen +x rechten op de directory waar de cookiefile eerst instond Zou niet nodig moeten zijn, maar zou wel een verklaring kunnen zijn.
    De cron wordt uitgevoerd door 'root', en ik had al geprobeerd de dir te chmodden naar 777. Het zou eigenlijk geen rechtenprobleem kunnen zijn. Ik blijf het wel vreemd vinden dat hij het cookie niet leest als deze in een andere dir staat dan het script zelf.

    Maargoed, via deze workaround werkt het ook. Het script staat toch in een afgesloten dir (.htaccess), dus niemand die bij het cookie kan komen van buitenaf.
    daReaperzaterdag 23 mei 2009 @ 18:00
    IK HAAT COOKIES

    Dat gezegd hebbende, het volgende stukje script:
    1
    2
    3
    4
    5
    6
    7
    <?php
    if(!setcookie("session"$ses$time"/"".".$conf['host'])) {
      
    trigger_error("Geen cookie geset");
      exit();
    }
    echo 
    join(", ", array("session"$ses$time"/"".".$conf['host']));
    ?>


    Als ik deze code uitvoer, wordt trigger_error() niet uitgevoerd, maar toch wordt er ook geen cookie geset. De uitvoer van de echo is: "session, 6f1ce41bdc591b41494be5bf14ba205f, 0, /, .dareaper"

    Als ik setcookie("session", $ses, $time, "/") doe, dan werkt ie wel prima, maar dan geldt de cookie alleen voor het subdomein waar dan toevallig ingelogd wordt, en dat wil ik natuurlijk niet. Wat doe ik hier verkeerd
    GlowMousezaterdag 23 mei 2009 @ 18:08
    quote:
    Return Values
    If output exists prior to calling this function, setcookie() will fail and return FALSE. If setcookie() successfully runs, it will return TRUE. This does not indicate whether the user accepted the cookie.
    Kijk even met http://nl2.php.net/manual/en/function.headers-list.php wat er precies verstuurd wordt; het is waarschijnlijk de client die bokt.
    daReaperzaterdag 23 mei 2009 @ 18:19
    quote:
    Op zaterdag 23 mei 2009 18:08 schreef GlowMouse het volgende:

    [..]

    Kijk even met http://nl2.php.net/manual/en/function.headers-list.php wat er precies verstuurd wordt; het is waarschijnlijk de client die bokt.
    1
    2
    3
    4
    5
    6
    7
    8
    Array ( 
      [0] => X-Powered-By: PHP/5.2.8 
      [1] => Set-Cookie: 
        session=9b90ceb47c92817e61874a7c1a670002; 
        expires=Sun, 23-May-2010 16:18:19 GMT; 
        path=/; 
        domain=.dareaper 


    Ziet er goed uit, dus, maar zowel in FF als in IE wordt er vervolgens geen koekje gezet :?
    GlowMousezaterdag 23 mei 2009 @ 18:21
    .dareaper is dan ook geen domeinnaam. Althans, als ik naar http://dareaper ga, dan zie ik niks Plus dat je geen cookies kunt zetten voor een TLD.
    daReaperzondag 24 mei 2009 @ 10:27
    quote:
    Op zaterdag 23 mei 2009 18:21 schreef GlowMouse het volgende:
    .dareaper is dan ook geen domeinnaam. Althans, als ik naar http://dareaper ga, dan zie ik niks Plus dat je geen cookies kunt zetten voor een TLD.
    Bij mij doet http://dareaper het wel

    Maar je hebt me op het juiste spoor gezet. Ik heb in de hosts file van "dareaper" "dareaper.nl" gemaakt, en nou werkt het prima! Bedankt
    -J-D-zondag 24 mei 2009 @ 22:19
    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
    <html>
    <head>
    <link rel="stylesheet" type="text/css" href="mijnstijl.css" />
    </head>
    <body>
    <table border="0">
    <tr align=left>
    <th>Ondertekend door:</th>
    </tr>

    <?php
    mysql_connect("serverl", "bla", "blaaaaa");
    mysql_select_db("jaja");

    $sql = "select * FROM jos_jdusers WHERE id <> '62' and id <> '63'";
    $res = mysql_query($sql);

    $i=0;

    while ($row = mysql_fetch_object($res))
    {   echo "<tr><td> " . $row->name. "</td></tr></br>";
      
    }
    ?>

    </font>
    </table>
    <//body>
    </html>

    mijnstijl.css
    1
    2
    3
    4
    body {background: #FFFFFF}
    TABLE { border: 0px solid #C0C0C0; background-color: #FFFFFF; font-family: Verdana; font-size: 12;}
    TD    { border: 0px solid #C0C0C0; font-family: Verdana; font-size: 12;
            }


    Hallo allen.
    Op een pagina heb ik de volgende code draaien. Deze werkt zoals het moet.
    Alleen zie je op die pagina dat er een witgedeelte boven die lijst staat. Hoe meer regels deze uitkomst bevat, hoe meer witregels er ook boven deze tekst komt te staan.
    Waar komen die witregels vandaan? En hoe kan ik ze verwijderen?

    Alvast bedankt
    Sjoe538zondag 24 mei 2009 @ 22:33
    SELECT med_email FROM tbl_medewerker WHERE med_email IS NOT NULL

    geeft als nog rijen met null terug

    Wijzigen Verwijderen **email**
    Wijzigen Verwijderen <leeg veld>
    Wijzigen Verwijderen <leeg veld>
    Wijzigen Verwijderen ** email **
    Unityzondag 24 mei 2009 @ 23:59
    quote:
    Op zondag 24 mei 2009 22:33 schreef Sjoe538 het volgende:
    SELECT med_email FROM tbl_medewerker WHERE med_email IS NOT NULL

    geeft als nog rijen met null terug

    Wijzigen Verwijderen **email**
    Wijzigen Verwijderen <leeg veld>
    Wijzigen Verwijderen <leeg veld>
    Wijzigen Verwijderen ** email **
    NULL en "" (leeg veld/lege string) zijn twee verschillende dingen. Misschien is het veld gevuld met een lege string?

    Wat returnt je DB bij deze 2 queries:

    SELECT med_email FROM tbl_medewerker WHERE med_email IS NULL
    en
    SELECT med_email FROM tbl_medewerker WHERE med_email=""
    ?

    Als de uitkomsten verschillend zijn, heb je je antwoord.
    Unitymaandag 25 mei 2009 @ 00:01
    quote:
    Op zondag 24 mei 2009 22:19 schreef -J-D- het volgende:

    [ code verwijderd ]

    mijnstijl.css
    [ code verwijderd ]

    Hallo allen.
    Op een pagina heb ik de volgende code draaien. Deze werkt zoals het moet.
    Alleen zie je op die pagina dat er een witgedeelte boven die lijst staat. Hoe meer regels deze uitkomst bevat, hoe meer witregels er ook boven deze tekst komt te staan.
    Waar komen die witregels vandaan? En hoe kan ik ze verwijderen?

    Alvast bedankt
    Regel 21: haal de <br/> tag weg, of zet deze in een <td>.

    Uitleg: je HTML is fout. De <tr> staat voor een nieuwe table row. Een rij accepteert alleen kolommen, en in de kolommen kan je weer de rest van je html kwijt. Als je een <br> (line break) in je <tr> zet, krijg je dit soort taferelen.

    [ Bericht 12% gewijzigd door Unity op 25-05-2009 00:04:12 (uitleg) ]
    -J-D-maandag 25 mei 2009 @ 15:36
    Merci Unity.
    Zowel de oplossing als de uitleg is top
    cablegunmasterdinsdag 26 mei 2009 @ 11:55
    Ik zit nu met een probleem we hebben een incidenten database, daaruit wilden we alle dubbele incidenten hebben. dus ik zat met de volgende query:

    Select omschrijving, systeem_naam
    from incident
    order by omschrijving

    en nu wil ik alleen de dubbele omschrijvingen hebben ik zat te denken aan having count(omschrijving) => 2
    alleen SQL pakt dat niet. hoe los ik dit op?
    GlowMousedinsdag 26 mei 2009 @ 12:00
    http://www.java2s.com/Cod(...)NTGROUPandHAVING.htm
    cablegunmasterdinsdag 26 mei 2009 @ 12:06
    quote:
    het probleem is dat, als ik de query uitvoer ik alleen de dubbele wil hebben en meer dan dubbel
    alleen ik wil per omschrijving de pc namen weten (meerdere namen per omschrijving)

    dan kwam ik met group by en having uit op

    Select count(omschrijving), omschrijving
    from incident
    group by omschrijving
    having count(omschrijving) > 1


    alleen dan heb ik maar 1 pc naam als ik hier systeem_naam in de select stopt en ik zou graag voor elke omschrijving 2 a meer pc namen willen hebben.

    een lijstje met
    omschrijving systeemnaam
    pc stuk A
    pc stuk B
    pc stuk C
    Printer stuk E
    Printer stuk D
    GlowMousedinsdag 26 mei 2009 @ 12:10
    quote:
    Op dinsdag 26 mei 2009 12:06 schreef cablegunmaster het volgende:

    [..]

    het probleem is dat, als ik de query uitvoer ik alleen de dubbele wil hebben en meer dan dubbel
    alleen ik wil per omschrijving de pc namen weten (meerdere namen per omschrijving)
    subqueries!
    cablegunmasterdinsdag 26 mei 2009 @ 12:11
    quote:
    Op dinsdag 26 mei 2009 12:10 schreef GlowMouse het volgende:

    [..]

    subqueries!
    ik ben flut in subquerys -_-;;
    maar het moet maar
    Chandlerdinsdag 26 mei 2009 @ 12:42
    gefixt
    cablegunmasterdonderdag 28 mei 2009 @ 13:09
    1
    2
    3
    4
    SELECT systeem_naam as child , systeem_naam as parent
    FROM verbinding,component
    WHERE verbinding.parent_component = component.systeem_id
    AND verbinding.child_component = component.systeem_id


    hoe kan ik dit fixen ? ik heb 2 rijen met systeem_ids en ik krijg het maar niet voorelkaar om netjes

    Tabel 1
    rij 1 , rij 2
    PC 1 router 3
    PC 2 router 2


    Mijn resultaat levert nu zonder laatste regel
    krijg ik
    Tabel 1
    rij 1 rij 2
    x x
    y y
    z z
    2 2

    en niet anders :p

    Probleem :
    2x systeem_id hoe kan ik deze van elkaar scheiden?

    ik heb een tabel verbinding met als velden child_component(int) en parent_component (int)
    beide zijn ze gelijk aan systeem_id (int) uit de tabel component, nu wil ik geen cijfers hebben uit de tabellen maar namen uit de tabel component VELD systeem_naam

    [ Bericht 10% gewijzigd door cablegunmaster op 28-05-2009 13:21:12 ]
    wobbeldonderdag 28 mei 2009 @ 21:05
    Nou daar komt ie dan: ik ben op zoek naar een goede Framework voor PHP

    Werk nou al zeker 6 jaar met PHP maar tot op heden schrijf ik elke regel code zelf icm een hele vieze templateparser van 5 jaar oud met meer beperkingen dan features

    Heb CakePHP al gebruikt, maar daar snap ik echt de ballen van
    cablegunmasterdonderdag 28 mei 2009 @ 22:32
    quote:
    Op donderdag 28 mei 2009 21:05 schreef wobbel het volgende:
    Nou daar komt ie dan: ik ben op zoek naar een goede Framework voor PHP
    Heb CakePHP al gebruikt, maar daar snap ik echt de ballen van
    dat probleem heb ik ook !!!
    #ANONIEMdonderdag 28 mei 2009 @ 22:34
    Definieer 'framework'. Bedoel je een MVC framework?
    Swetseneggerzaterdag 30 mei 2009 @ 15:47
    Database normalisatie vraagje

    Ik ga een nieuw webshopje bouwen voor een klant en het gaat om kledingstukken. Nu zijn er van een bepaald kledingstuk natuurlijk meerdere maten EN meerdere kleuren mogelijk. Dus bv Jurk XXX heb je in maat 38 in wit, rood en zwart in maat 40 in wit en zwart in maat 42 alleen in wit.

    Database bedacht ik een tabel met artikel codes en omschrijving. En dan een koppeltabel waar je per maat/ per kleur een record weg schrijft. Voor bovenstaand voorbeeld krijg je dan zoiets

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Tabel artikelcode

    id  |  artikelcode
    -------------------
     1  |  ZJ001
     2  |  SJ214

    tabel voorraad

    id  |  articlecode_id | maat | kleur  | prijs
    -------------------------------------------------
     1  |   1             |  38  | rood   | 39,95
     2  |   1             |  38  | wit    | 39,95
     3  |   1             |  38  | zwart  | 39,95
     4  |   1             |  40  | wit    | 39,95
     5  |   1             |  40  | zwart  | 39,95
     6  |   1             |  42  | wit    | 39,95


    Dit lijkt me het meest handig? Sowieso voor voorraad indicatie en dergelijke.
    WyriHaximuszaterdag 30 mei 2009 @ 18:27
    quote:
    Op donderdag 28 mei 2009 22:32 schreef cablegunmaster het volgende:

    [..]

    dat probleem heb ik ook !!!
    book.cakephp.org en bakery.cakephp.org al eens door gekeken?
    Lente_ninjazaterdag 30 mei 2009 @ 19:28
    Newbie alert :

    Ik probeer een stuk code te schrijven, en dat gaat niet zonder slag of stoot. Ik ben al bijna een week aan het proberen, schelden en php.net doorspitten tot ik scheel zie, maar ik kom geen steek verder. Vandaar dat ik hier mijn geluk maar eens ga beproeven.

    De bedoeling is dat er door middel van een functie, een kenteken gevalideerd (heet dat zo? ) kan worden. Dat wil zeggen, de gebruiker mag alleen volgens het formaat xx-xx-xx (waarvan de eerste twee tekens alleen letters en de rest alleen cijfers) invoeren. (ik weet dat het tegenwoordig xx-xxx-xx is, maar ik moet de oude soort aanhouden)

    Ik heb 'm al wel zover dat 'ie een foutmelding geeft als de streepjes niet op de goede plekken staan en dat hij alleen een invoer van 8 tekens accepteert, maar daarna loop ik vast. Ik heb al van alles geprobeerd: for, loops, arrays... maar de code werkt helaas niet mee. Of PHP heeft een hekel aan me, of ik doe ergens iets verkeerd.

    Ik heb wel één 'hint' gekregen. Maak gebruik van 'modulo' (dit geval: %). Ik zou niet weten hoe dit kan helpen, maar goed.

    Ik krijg hier hoofdpijn van, maar misschien kan een vriendelijke Fok!ker me verder helpen?

    Wat ik tot nu toe in elkaar heb geflanst (echoes zijn vooral voor mezelf om nou te kijken wat nou precies wat doet):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <?php
    function checkkenteken($kenteken)
    {
        if(
    strpos($kenteken'-')!== false and strlen($kenteken) == 8)
            {
            
    $pos_streep1 strpos($kenteken'-');
            
    $pos_streep2 strpos($kenteken'-'4);
                if(
    $pos_streep1 == and $pos_streep2 == 5)
                    {
                        echo 
    "streep 1: $pos_streep1 <br> streep 2: $pos_streep2 <br>";                    
                    }
                
            }
        
        else
            {
            echo 
    'kenteken heeft niet goede lengte<br>';
            }
    }
    checkkenteken('12-ab-cd'). '<br>';
    ?>
    wobbelzaterdag 30 mei 2009 @ 19:42
    quote:
    Op zaterdag 30 mei 2009 19:28 schreef Lente_ninja het volgende:
    Newbie alert :

    Ik probeer een stuk code te schrijven, en dat gaat niet zonder slag of stoot. Ik ben al bijna een week aan het proberen, schelden en php.net doorspitten tot ik scheel zie, maar ik kom geen steek verder. Vandaar dat ik hier mijn geluk maar eens ga beproeven.

    De bedoeling is dat er door middel van een functie, een kenteken gevalideerd (heet dat zo? ) kan worden. Dat wil zeggen, de gebruiker mag alleen volgens het formaat xx-xx-xx (waarvan de eerste twee tekens alleen letters en de rest alleen cijfers) invoeren. (ik weet dat het tegenwoordig xx-xxx-xx is, maar ik moet de oude soort aanhouden)

    Ik heb 'm al wel zover dat 'ie een foutmelding geeft als de streepjes niet op de goede plekken staan en dat hij alleen een invoer van 8 tekens accepteert, maar daarna loop ik vast. Ik heb al van alles geprobeerd: for, loops, arrays... maar de code werkt helaas niet mee. Of PHP heeft een hekel aan me, of ik doe ergens iets verkeerd.

    Ik heb wel één 'hint' gekregen. Maak gebruik van 'modulo' (dit geval: %). Ik zou niet weten hoe dit kan helpen, maar goed.

    Ik krijg hier hoofdpijn van, maar misschien kan een vriendelijke Fok!ker me verder helpen?

    Wat ik tot nu toe in elkaar heb geflanst (echoes zijn vooral voor mezelf om nou te kijken wat nou precies wat doet):
    [ code verwijderd ]

    ik denk dat je beter met reguliere expressies kan werken.
    je zou het ook met een explode kunnen doen denk ik
    Lente_ninjazaterdag 30 mei 2009 @ 19:51
    quote:
    Op zaterdag 30 mei 2009 19:42 schreef wobbel het volgende:

    [..]

    ik denk dat je beter met reguliere expressies kan werken.
    je zou het ook met een explode kunnen doen denk ik


    Het enige wat hier op het punt staat te exploden, is mijn hoofd ("waarom doet 'ie ut nou niehiehiet "*scheld scheld scheld * )

    Praat tegen me alsof ik vijf ben: wat bedoel je precies? (ja, ik ben nieuw met PHP )
    wobbelzaterdag 30 mei 2009 @ 19:52
    quote:
    Op zaterdag 30 mei 2009 19:51 schreef Lente_ninja het volgende:

    [..]

    Het enige wat hier op het punt staat te exploden, is mijn hoofd (*scheld scheld scheld* "waarom doet 'ie ut nou niehiehiet")

    Praat tegen me alsof ik vijf ben: wat bedoel je precies? (ja, ik ben nieuw met PHP )
    Oke, bij deze mijn eigen eerste reguliere expressie nu heb ik het zelf ook geleerd
    (willen de overige PHP'ers deze ff controleren? ik vertrouw hem niet ^^ )

    (test op http://www.kontpiraat.nl/test.php?kenteken=SL-NB-18 )

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $kenteken 
    $_GET['kenteken'];

    if(
    preg_match('/^[0-9a-zA-z]{2}-[0-9a-zA-z]{2}-[0-9a-zA-z]{2}$/'$kenteken))
    {
        echo 
    "goed";
    }
    else
    {
        echo 
    "fout";
    }
    ?>


    de rest moet wel lukken toch?

    Met reguliere expressies kun je patronen herkenen of controleren dat waardes aan bepaalde eisen voldoen (zoals in dit geval XX-XX-XX )
    Lente_ninjazaterdag 30 mei 2009 @ 19:54
    quote:
    Op zaterdag 30 mei 2009 19:52 schreef wobbel het volgende:

    [..]

    Oke, bij deze mijn eigen eerste reguliere expressie nu heb ik het zelf ook geleerd

    (test op http://www.kontpiraat.nl/test.php?kenteken=SL-NB-18 )
    [ code verwijderd ]



    JAAA!!!

    Maar waarom zou ik dus (als ik mijn reader mag geloven) een modulo moeten gebruiken? Ik ben geen PHP heldin (dat moge intussen duidelijk zijn ), maar jouw manier klinkt veel logischer.
    wobbelzaterdag 30 mei 2009 @ 19:56
    quote:
    Op zaterdag 30 mei 2009 19:54 schreef Lente_ninja het volgende:

    [..]

    JAAA!!!

    Maar waarom zou ik dus (als ik mijn reader mag geloven) een modulo moeten gebruiken? Ik ben geen PHP heldin (dat moge intussen duidelijk zijn ), maar jouw manier klinkt veel logischer.
    een modulo? wat is dat dan weer

    mijn nickname @gmail.com is msn voor als je hulp nodig hebt ^^
    Lente_ninjazaterdag 30 mei 2009 @ 20:00
    quote:
    Op zaterdag 30 mei 2009 19:56 schreef wobbel het volgende:

    [..]

    een modulo? wat is dat dan weer

    mijn nickname @gmail.com is msn voor als je hulp nodig hebt ^^
    Een modulo is zo'n tekentje: % en dan doet 'ie zoiets:

    23 % 5 = 3

    Dan deelt hij 23 door 5 tot het niet meer kan en dan houd je dus 3 over.... of zoiets

    Ik voeg je toe zodra ik op een computer met MSN zit
    Swetseneggerzondag 31 mei 2009 @ 10:01
    quote:
    Op zaterdag 30 mei 2009 15:47 schreef Swetsenegger het volgende:
    Database normalisatie vraagje

    Ik ga een nieuw webshopje bouwen voor een klant en het gaat om kledingstukken. Nu zijn er van een bepaald kledingstuk natuurlijk meerdere maten EN meerdere kleuren mogelijk. Dus bv Jurk XXX heb je in maat 38 in wit, rood en zwart in maat 40 in wit en zwart in maat 42 alleen in wit.

    Database bedacht ik een tabel met artikel codes en omschrijving. En dan een koppeltabel waar je per maat/ per kleur een record weg schrijft. Voor bovenstaand voorbeeld krijg je dan zoiets
    [ code verwijderd ]

    Dit lijkt me het meest handig? Sowieso voor voorraad indicatie en dergelijke.
    iemand?
    GlowMousezondag 31 mei 2009 @ 11:39
    quote:
    Op zondag 31 mei 2009 10:01 schreef Swetsenegger het volgende:

    [..]

    iemand?
    Het lijkt mij een handige db lay-out om mee te werken. Prijzen zou ik alleen in centen als mediumint opslaan, en een kolom zou ik zelf nooit id noemen maar eerder artikelid, dan weet je in je code ($row['artikelid']) ook om wat voor id het gaat.
    wobbelzondag 31 mei 2009 @ 12:45
    quote:
    Op zondag 31 mei 2009 11:39 schreef GlowMouse het volgende:

    [..]

    Het lijkt mij een handige db lay-out om mee te werken. Prijzen zou ik alleen in centen als mediumint opslaan, en een kolom zou ik zelf nooit id noemen maar eerder artikelid, dan weet je in je code ($row['artikelid']) ook om wat voor id het gaat.
    Vooral als je met joins gaat werken gaat dat soms vervelend werken
    Swetseneggermaandag 1 juni 2009 @ 08:13
    quote:
    Op zondag 31 mei 2009 11:39 schreef GlowMouse het volgende:

    [..]

    Het lijkt mij een handige db lay-out om mee te werken. Prijzen zou ik alleen in centen als mediumint opslaan, en een kolom zou ik zelf nooit id noemen maar eerder artikelid, dan weet je in je code ($row['artikelid']) ook om wat voor id het gaat.
    Ja dit zijn nog niet de omschrijvingen in de tabel. Opslaan in centen is misschien handig, aangezien de meeste payment providers het bedrag ook in centen willen ontvangen.

    Ik zit alleen nog met afbeeldingen (3 per artikel). Maak ik een aparte afbeeldingen tabel en koppel ik die op voorraad id of hang gewoon 3 foto's in de voorraad tabel per product. Wat is wijsheid.

    Nadeel van de laatste is natuurlijk de schaalbaarheid. Het eerste wordt wat lastiger met queries.
    quote:
    Op zondag 31 mei 2009 12:45 schreef wobbel het volgende:

    [..]

    Vooral als je met joins gaat werken gaat dat soms vervelend werken
    Dat valt toch wel mee? Je geeft desbetreffende tabellen toch een alias in je query SELECT * FROM dba a JOIN dbb b ON (a.id=b.id)
    Xcaliburmaandag 1 juni 2009 @ 11:49
    Swets: zijn dat niet gewoon allemaal verschillende artikelen, met verschillende artikelnummers?
    Een "rode trui maat M" is niet hetzelfde als een "blauwe trui maat XL", waarom zou je die als hetzelfde artikel willen opslaan?

    Wellicht kun je iets zoals Wehkamp (geloof ik) doet? Die hebben artikelnummers gevolgd door een letter, dus 1234567B, wat dus artikel 1234567 in kleur B (= Blauw) is. Lijkt mij een stuk praktischer dan via een koppeltabel eerlijk gezegd

    Edit: opslaan in centen is altijd een goed idee! Sowieso opslaan in de kleinst mogelijk eenheid, zodat je geen breuken krijgt PSP's willen het inderdaad in centen hebben, bovendien heb je geen gezeur met punten en komma's in je bedragen, of een bedrag als ¤ 15,10 wat afgerond wordt naar 15,1 of iets dergelijks
    Swetseneggermaandag 1 juni 2009 @ 12:05
    quote:
    Op maandag 1 juni 2009 11:49 schreef Xcalibur het volgende:
    Swets: zijn dat niet gewoon allemaal verschillende artikelen, met verschillende artikelnummers?
    Een "rode trui maat M" is niet hetzelfde als een "blauwe trui maat XL", waarom zou je die als hetzelfde artikel willen opslaan?

    Wellicht kun je iets zoals Wehkamp (geloof ik) doet? Die hebben artikelnummers gevolgd door een letter, dus 1234567B, wat dus artikel 1234567 in kleur B (= Blauw) is. Lijkt mij een stuk praktischer dan via een koppeltabel eerlijk gezegd

    Edit: opslaan in centen is altijd een goed idee! Sowieso opslaan in de kleinst mogelijk eenheid, zodat je geen breuken krijgt PSP's willen het inderdaad in centen hebben, bovendien heb je geen gezeur met punten en komma's in je bedragen, of een bedrag als ¤ 15,10 wat afgerond wordt naar 15,1 of iets dergelijks
    Als je ze als verschillende artikelcodes opslaat zal ik weer iets van een groep ID of iets dergelijks moeten hebben om te zorgen dat ze bij elkaar horen. Dat moet je dan handmatig in het cms gaan doen. Degene die er mee gaat werken is niet bekend met cms'en of uberhaupt computers dus ik wil het zo monkey proof maken als mogelijk.

    Nog even over nadenken
    Xcaliburmaandag 1 juni 2009 @ 13:09
    Je kunt de variaties op de artikelnummers ook automatisch maken natuurlijk
    De artikelen hebben in basis hetzelfde nummer, en je postfixt die met de gekozen kleur (B) en maat (XL) bijvoorbeeld. Je numerieke gedeelte van het artikelnummer blijft dan hetzelfde, waarop je ze ook vrij eenvoudig kunt terugvinden?
    Swetseneggermaandag 1 juni 2009 @ 15:07
    quote:
    Op maandag 1 juni 2009 13:09 schreef Xcalibur het volgende:
    Je kunt de variaties op de artikelnummers ook automatisch maken natuurlijk
    De artikelen hebben in basis hetzelfde nummer, en je postfixt die met de gekozen kleur (B) en maat (XL) bijvoorbeeld. Je numerieke gedeelte van het artikelnummer blijft dan hetzelfde, waarop je ze ook vrij eenvoudig kunt terugvinden?
    Mjah dan moet ik de klant gaan voorschrijven hoe ze d'r artikelen gaat coderen. Of ik moet, behalve in mijn systeem, niets meer doen met die kleurcodes. Alleen op de bon weergeven dat het om blauw in maat 40 gaat. Het is het overwegen waard.
    Xcaliburmaandag 1 juni 2009 @ 21:39
    nou ja, die kleurcodes en maat kan je natuurlijk wel gewoon apart opslaan
    maar door ze in het artikelnummer toe te voegen kun je er wel aparte artikelen van maken, en is het misschien makkelijker te handelen?

    Ik moet zeggen dat ik zelf nog nooit een shop voor kleding heb gebouwd, dus ik weet verder ook niet wat de gangbare / beste methode is. Maar dit lijkt me op zich een nuttige aanpak
    Lightmaandag 1 juni 2009 @ 22:38
    quote:
    Op zaterdag 30 mei 2009 19:52 schreef wobbel het volgende:

    [..]

    Oke, bij deze mijn eigen eerste reguliere expressie nu heb ik het zelf ook geleerd
    (willen de overige PHP'ers deze ff controleren? ik vertrouw hem niet ^^ )

    (test op http://www.kontpiraat.nl/test.php?kenteken=SL-NB-18 )
    [ code verwijderd ]
    Als ik die regex (reguliere expressie) bekijk dan accepteert'ie ook de formaten BB-BB-BB en 11-11-11. Maar dat zijn geen geldige formaten, die zijn nooit uitgegeven.

    Dan klopt het nog niet helemaal, klinkers worden niet gebruikt en ook een aantal lettercombinaties komen niet voor (volgens mij nog in alle combinaties met 4 cijfers). Maar dat gaat misschien wat ver om rekening mee te houden.
    Lightmaandag 1 juni 2009 @ 23:01
    quote:
    Op maandag 1 juni 2009 21:39 schreef Xcalibur het volgende:
    nou ja, die kleurcodes en maat kan je natuurlijk wel gewoon apart opslaan
    maar door ze in het artikelnummer toe te voegen kun je er wel aparte artikelen van maken, en is het misschien makkelijker te handelen?
    Aan de andere kant, je moet er ook rekening mee houden dat iemand misschien eens korting wilt geven. En dan maakt het niet uit of je die trui nou in maat M of X koopt, of in rood of blauw. Of het maakt wel uit, maar dan moet je voor iedere mogelijke combinatie aangeven welke korting er van toepassing is. Voor 7 maten (XXS - XXL) en 3 kleuren zijn dat al 21 combinaties.
    quote:
    Ik moet zeggen dat ik zelf nog nooit een shop voor kleding heb gebouwd, dus ik weet verder ook niet wat de gangbare / beste methode is. Maar dit lijkt me op zich een nuttige aanpak
    Ik heb een beetje ervaring met Virtuemart en nog minder osCommerce. Op zich leuke systemen, alleen nauwelijks geschikt als je een aangepaste template wilt gebruiken.
    Flacciddinsdag 2 juni 2009 @ 10:48
    Ik zoek een simpele bezoekersteller die laat zien hoeveel pageviews er vandaag zijn geweest. Ik gebruik al google analytics, maar ik wil iets hebben wat iedereen kan zien.
    T liefst zonder mysql, in een txt wegschrijven zou toch ook prima kunnen?

    Heb gegoogled maar ik kom uit op allemaal poepsites die t niet meer doen.
    Swetseneggerdinsdag 2 juni 2009 @ 10:51
    quote:
    Op maandag 1 juni 2009 23:01 schreef Light het volgende:

    [..]

    Aan de andere kant, je moet er ook rekening mee houden dat iemand misschien eens korting wilt geven. En dan maakt het niet uit of je die trui nou in maat M of X koopt, of in rood of blauw. Of het maakt wel uit, maar dan moet je voor iedere mogelijke combinatie aangeven welke korting er van toepassing is. Voor 7 maten (XXS - XXL) en 3 kleuren zijn dat al 21 combinaties.
    Er komen inderdaad kortings opties in.
    Swetseneggerdinsdag 2 juni 2009 @ 10:53
    quote:
    Op dinsdag 2 juni 2009 10:48 schreef Flaccid het volgende:
    Ik zoek een simpele bezoekersteller die laat zien hoeveel pageviews er vandaag zijn geweest. Ik gebruik al google analytics, maar ik wil iets hebben wat iedereen kan zien.
    T liefst zonder mysql, in een txt wegschrijven zou toch ook prima kunnen?

    Heb gegoogled maar ik kom uit op allemaal poepsites die t niet meer doen.
    Dus als de zelfde persoon 6 keer f5't wil je gewoon 6 pageviews tellen?
    Flacciddinsdag 2 juni 2009 @ 11:38
    quote:
    Op dinsdag 2 juni 2009 10:53 schreef Swetsenegger het volgende:

    [..]

    Dus als de zelfde persoon 6 keer f5't wil je gewoon 6 pageviews tellen?
    Mmm. Een refresh protectie, is dat te doen?
    Darkomendinsdag 2 juni 2009 @ 12:34
    quote:
    Op dinsdag 2 juni 2009 10:53 schreef Swetsenegger het volgende:

    [..]

    Dus als de zelfde persoon 6 keer f5't wil je gewoon 6 pageviews tellen?
    Dat zijn toch ook pageviews

    maar ik zou zeggen met cookies of sessies gaan werken.

    En ik kan me niet voorstellen dat je niet 1 werkende op google gevonden hebt
    super-muffindinsdag 2 juni 2009 @ 13:03
    quote:
    Op dinsdag 2 juni 2009 10:53 schreef Swetsenegger het volgende:

    [..]

    Dus als de zelfde persoon 6 keer f5't wil je gewoon 6 pageviews tellen?
    6 keer F5 (of CMD + R) zijn ook 6 pageviews, maar nog steeds 1 visit.

    - edit:
    Spuit 11. Voortaan refresh ik het topic nog even als ik klaar ben met lunchen.
    Swetseneggerdinsdag 2 juni 2009 @ 20:07
    quote:
    Op dinsdag 2 juni 2009 11:38 schreef Flaccid het volgende:

    [..]

    Mmm. Een refresh protectie, is dat te doen?
    Dan wil je unieke bezoekers opslaan. definieer 'unieke bezoeker'
    Swetseneggerdinsdag 2 juni 2009 @ 20:08
    quote:
    Op maandag 1 juni 2009 08:13 schreef Swetsenegger het volgende:

    Ik zit alleen nog met afbeeldingen (3 per artikel). Maak ik een aparte afbeeldingen tabel en koppel ik die op voorraad id of hang gewoon 3 foto's in de voorraad tabel per product. Wat is wijsheid.

    Nadeel van de laatste is natuurlijk de schaalbaarheid. Het eerste wordt wat lastiger met queries.
    Wat denken jullie?
    ralfiedinsdag 2 juni 2009 @ 21:02
    quote:
    Op dinsdag 2 juni 2009 20:08 schreef Swetsenegger het volgende:

    [..]

    Wat denken jullie?
    ik neem aan dat je de afbeeldingen toch stuk voor stuk eruit trekt? wat dat betreft maakt het qua moeilijkheid of snelheid geen barst uit. Ga dus voor de losse tabel.
    Swetseneggerdinsdag 2 juni 2009 @ 21:04
    quote:
    Op dinsdag 2 juni 2009 21:02 schreef ralfie het volgende:

    [..]

    ik neem aan dat je de afbeeldingen toch stuk voor stuk eruit trekt? wat dat betreft maakt het qua moeilijkheid of snelheid geen barst uit. Ga dus voor de losse tabel.
    Nee, als een product getoont wordt, staan er direct 3 afbeeldingen bij. Zoiets als dit
    #ANONIEMdinsdag 2 juni 2009 @ 21:15
    Ik zou voor de generieke functionaliteit gaan in dit geval; makkelijk uitbreidbaar en goed te onderhouden.
    ralfiedinsdag 2 juni 2009 @ 21:48
    quote:
    Op dinsdag 2 juni 2009 21:04 schreef Swetsenegger het volgende:

    [..]

    Nee, als een product getoont wordt, staan er direct 3 afbeeldingen bij. Zoiets als dit
    dat zijn dan toch gewoon vier individuele scripts die elk een plaatje ophalen?
    Swetseneggerdinsdag 2 juni 2009 @ 21:49
    quote:
    Op dinsdag 2 juni 2009 21:15 schreef Scorpie het volgende:
    Ik zou voor de generieke functionaliteit gaan in dit geval; makkelijk uitbreidbaar en goed te onderhouden.
    Extra foto tabel dus?
    quote:
    Op dinsdag 2 juni 2009 21:48 schreef ralfie het volgende:

    [..]

    dat zijn dan toch gewoon vier individuele scripts die elk een plaatje ophalen?
    Weet ik veel, ik heb de source niet
    daReaperwoensdag 3 juni 2009 @ 11:00
    quote:
    Op zaterdag 30 mei 2009 19:52 schreef wobbel het volgende:

    [..]

    Oke, bij deze mijn eigen eerste reguliere expressie :D nu heb ik het zelf ook geleerd :7 8-)
    (willen de overige PHP'ers deze ff controleren? :P ik vertrouw hem niet ^^ )

    (test op http://www.kontpiraat.nl/test.php?kenteken=SL-NB-18 )
    [ code verwijderd ]

    de rest moet wel lukken toch? :)

    Met reguliere expressies kun je patronen herkenen of controleren dat waardes aan bepaalde eisen voldoen (zoals in dit geval XX-XX-XX )
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    $kenteken = $_GET['kenteken'];
    $valide = "[BCDFGHJKLMNPQRSTVWXZ]"

    if(preg_match('/^$valide{2}-\d{2}-\d{2}$/i', $kenteken))
    {
        echo "goed";
    }
    else
    {
        echo "fout";
    }
    ?>


    \d is hetzelfde als [0-9]
    in $valide staan de geldige letters (voor zover ik weet)
    /i achter de expressie geeft aan dat het niet case sensitive is.

    Niet getest overigens, maar ik geloof dat het zo wel moet kloppen.
    Lightwoensdag 3 juni 2009 @ 11:55
    quote:
    Op woensdag 3 juni 2009 11:00 schreef daReaper het volgende:

    [..]
    [ code verwijderd ]

    \d is hetzelfde als [0-9]
    in $valide staan de geldige letters (voor zover ik weet)
    /i achter de expressie geeft aan dat het niet case sensitive is.

    Niet getest overigens, maar ik geloof dat het zo wel moet kloppen.
    De klinkers zijn in het verleden wel gebruikt. Je ziet ze nog op auto's met blauwe kentekenplaten. Lekker ingewikkeld allemaal
    Flaccidwoensdag 3 juni 2009 @ 12:18
    quote:
    Op dinsdag 2 juni 2009 20:07 schreef Swetsenegger het volgende:

    [..]

    Dan wil je unieke bezoekers opslaan. definieer 'unieke bezoeker'
    Mmm ik denk dat ik dan uitkom op visits.
    Catch22-woensdag 3 juni 2009 @ 12:30
    quote:
    Op dinsdag 12 mei 2009 19:35 schreef beerten het volgende:

    [..]

    Ja, gebruik Notepad++ Werkt perfect, alleen kan ik nog geen directory/file structuur - presentatie-ding vinden voor aan de zijkant van het progje. Zodat ik snel kan switchen en zoeken naar bestanden.
    Of Notepad++ kent het niet, of ik heb de optie nog niet kunnen vinden.
    Bestaat wel.

    light explorer heet het, is standaard volgens mij
    wobbelwoensdag 3 juni 2009 @ 22:05
    Waarschijnlijk is deze voor jullie heel simpel, voor ik kan zo snel geen oplossing bedenken

    Heb nu een simpel facturatiesysteempje dat een PDFje genereert.
    Maar nu komt de vraag: hoe zorg ik ervoor dat de factuur zich elke maand herhaalt?

    Stel ik maak Factuur F2455 en geef op dat deze zich gedurende 1 jaar elke maand moet herhalen (dus een soort abonnement). Moet ik dan met extra tabellen gaan werken?

    Of gewoon de tabel Facturen aanpassen, extra veld toevoegen genaamd AantalHerhalingen invoegen en dan elke maand -1 doen bij AantalHerhalingen tot deze op 0 staat? (en dan wel uiteraard een ander factuur nummer generen voor de rest)
    Catch22-woensdag 3 juni 2009 @ 22:09
    of een einddatum aangeven en de dag van de maand waarop hij moet.

    zijn meerdere wegen die naar rome leiden
    Xcaliburwoensdag 3 juni 2009 @ 22:10
    ik zou een einddatum opgeven, ipv met een aantal te werken
    En je moet zorgen dat je script vaak genoeg draait zodat ze gegenereerd worden
    wobbelwoensdag 3 juni 2009 @ 22:17
    quote:
    Op woensdag 3 juni 2009 22:10 schreef Xcalibur het volgende:
    ik zou een einddatum opgeven, ipv met een aantal te werken
    En je moet zorgen dat je script vaak genoeg draait zodat ze gegenereerd worden
    Dat valt toch wel af te vangen met een cronjob die de resultaten wegschrijft en evt mailtj?

    Ben op dit moment ook beetje mijn programmeermethodes aan het wijzigen. Werkte vroeger altijd met Unix time, maar voor deze methode kan ik beter met de MySQL DATETIME gaan werken of niet?
    Nashjedonderdag 4 juni 2009 @ 10:00
    Ik ben een beetje een leek in PHP en MySQL. Een script aanpassen kan ik wel, en kan ook een tabel aanmaken in phpMyAdmin, maar zelf vanaf onderaan beginnen met schrijven vind ik nog moeilijk. Toch wil ik dat nu gaan doen, en beetje hulp daarbij zou wel fijn zijn, vandaar dat ik het hier maar probeer.

    Wat ik wil maken:
    Je hebt 3 select options naast elkaar en daarnaast een submit knop. Je selecteert de 3 options die je wilt, en vervolgens klik je op submit. De output moet dan uit de database worden gehaald en toont dus alleen de output die onder de options in de db staat die je dan dus hebt gesubmit. Hoe is dit te maken?

    Ik had al een beginseltje:
    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
    <?
    $gegevens = mysql_query("SELECT groenten ORDER BY ASC") or die ("Geen tabel geselecteerd.");
    $resultaat = mysql_fetch_assoc($gegevens);

    if(isset($_POST['groenten']))
    {
       elseif($_POST['groenten'] == "bloemkool")
          {
             $resultaat['bloemkool']; 
          }
    }
       else
       {
          echo 'Selecteer iets.';
       }
    ?> 

    <form method="post" action="#">
    <select>
    <option value="">Selecteer groenten</option>
    <option value="bloemkool" name="bloemkool">bloemkool</option>
    <option value="1" name="test2">Test 2</option>
    </select>

    <select>
    <option value="">Selecteer 2</option>
    <option value="0" name="test3">Test 3</option>
    <option value="1" name="test4">Test 4</option>
    </select>

    <select>
    <option value="">Selecteer 3</option>
    <option value="0" name="test5">Test 5</option>
    <option value="1" name="test6">Test 6</option>
    </select>

    <input type="submit" value="Checken" />
    </form>


    Dank voor de hulp alvast! :)
    Catch22-donderdag 4 juni 2009 @ 10:41
    de select een name geven is al een goed begin
    Nashjedonderdag 4 juni 2009 @ 14:10
    Mooi . Nu de rest nog. Gaat dit zo werken? En dan voor elke option dus.
    #ANONIEMdonderdag 4 juni 2009 @ 14:43
    quote:
    Op dinsdag 2 juni 2009 21:49 schreef Swetsenegger het volgende:

    [..]

    Extra foto tabel dus?
    [..]

    Weet ik veel, ik heb de source niet
    Ja.
    Catch22-donderdag 4 juni 2009 @ 14:59
    quote:
    Op donderdag 4 juni 2009 14:10 schreef Nashje het volgende:
    Mooi . Nu de rest nog. Gaat dit zo werken? En dan voor elke option dus.
    wat wil je nu in hemelsnaam bereiken? De opties uit de database halen ofzo?

    order by asc? die("table is niet gevonden")?

    ik zou even wat basis tutorials doornemen.
    Nashjedonderdag 4 juni 2009 @ 15:07
    quote:
    Op donderdag 4 juni 2009 14:59 schreef Catch22- het volgende:

    [..]

    wat wil je nu in hemelsnaam bereiken? De opties uit de database halen ofzo?
    Nee, de output onder elke optie uit de database halen. Áls die wordt gesubmit uiteraard.
    cablegunmasterzondag 7 juni 2009 @ 22:02
    hoe zit het eigenlijk met een textfield?
    ik heb een textfield en als je die op enter drukt slaat hij het niet op. moet ik hiervoor een preg replace gebruiken? ?
    Lightzondag 7 juni 2009 @ 22:22
    quote:
    Op zondag 7 juni 2009 22:02 schreef cablegunmaster het volgende:
    hoe zit het eigenlijk met een textfield?
    ik heb een textfield en als je die op enter drukt slaat hij het niet op. moet ik hiervoor een preg replace gebruiken? ?
    Bedoel je een textfield in een html-pagina? Is het dan een <input type="text"> of een <textarea> ?
    Of bedoel je een text-veld in een database?
    En hoezo wordt het niet opgeslagen? Een stukje code zou handig kunnen zijn. En wat je met een preg replace wilt, weet ik niet. Maar voor het opslaan van tekst in een database heb je geen preg replace nodig.
    cablegunmasterzondag 7 juni 2009 @ 22:26
    quote:
    Op zondag 7 juni 2009 22:22 schreef Light het volgende:

    [..]

    Bedoel je een textfield in een html-pagina? Is het dan een <input type="text"> of een <textarea> ?
    Of bedoel je een text-veld in een database?
    En hoezo wordt het niet opgeslagen? Een stukje code zou handig kunnen zijn. En wat je met een preg replace wilt, weet ik niet. Maar voor het opslaan van tekst in een database heb je geen preg replace nodig.
    nou je wil de enters opslaan en weergeven
    GlowMousezondag 7 juni 2009 @ 22:28
    quote:
    Op zondag 7 juni 2009 22:26 schreef cablegunmaster het volgende:

    [..]

    nou je wil de enters opslaan en weergeven
    Ah, dat verduidelijkt een hoop! Light stelde die vragen ook maar voor de grap.
    cablegunmasterzondag 7 juni 2009 @ 22:29
    quote:
    Op zondag 7 juni 2009 22:28 schreef GlowMouse het volgende:

    [..]

    Ah, dat verduidelijkt een hoop! Light stelde die vragen ook maar voor de grap.
    boeit niet daarvoor denk ik toch een preg replace? en dan opslaan in de database zonder br? of maakt dat niet uit? lag me iets bij dat je eigenlijk geen html in de database moet krijgen.
    waarom weet ik niet maar als iemand mij dit kon uitleggen dan zou ik dat heel graag op prijs stellen.

    Alvast bedankt
    Lightzondag 7 juni 2009 @ 22:36
    quote:
    Op zondag 7 juni 2009 22:26 schreef cablegunmaster het volgende:

    [..]

    nou je wil de enters opslaan en weergeven
    Ow, zeg dat dan. En zoek eens op nl2br();
    cablegunmasterzondag 7 juni 2009 @ 22:45
    quote:
    Op zondag 7 juni 2009 22:36 schreef Light het volgende:

    [..]

    Ow, zeg dat dan. En zoek eens op nl2br();
    http://nl.php.net/nl2br

    tof danke
    maar eens binnenkort mn website eens hermaken met zelf geschreven code ipv een proggie .
    al kun je daar wel code vanaf jatten. Maar ik ben bang dat daar veel bragge code tussen zit.

    Maar dat krijg je met veel proggrameurs die onderling niet weten van hoe en wat
    ( cutephp russian gedoe) leuk programma maar voelt raar aan.

    Liever zelf iets ontwerpen

    [ Bericht 32% gewijzigd door cablegunmaster op 07-06-2009 23:19:11 ]
    Lightmaandag 8 juni 2009 @ 00:02
    quote:
    Op zondag 7 juni 2009 22:29 schreef cablegunmaster het volgende:

    en dan opslaan in de database zonder br? of maakt dat niet uit? lag me iets bij dat je eigenlijk geen html in de database moet krijgen.
    waarom weet ik niet maar als iemand mij dit kon uitleggen dan zou ik dat heel graag op prijs stellen.

    Alvast bedankt
    Of je de originele code of de aangepaste html-code opslaat, is voor een groot deel eigen keuze. Als je opslaat wat de gebruiker heeft ingetypt dan is het makkelijker om die tekst later aan te passen. Nadeel is wel dat je voor iedere pageview weer moet vertalen naar html-code.

    Als je de html-versie opslaat hoef je maar 1 keer te converteren, maar moet je bij een eventuele aanpassing weer terugconverteren. En da's ook niet altijd makkelijk. Meestal is het daarom handiger om de gebruikersinvoer op te slaan. Als je veel pageviews krijgt, kun je overwegen daarnaast de html-versie op te slaan.
    Mireldinsdag 9 juni 2009 @ 10:02
    Hoi. Voor een website waar ik aan werk, moet de URL uiteindelijk anders worden dan dat het nu is. Een ander bedrijf heeft het definitieve domein in handen, en die vroegen ons of we het ip van ónze domein konden geven, zodat als iemand hun URL intypt, hij terechtkomt bij onze site.
    Echter, het ip van onze domeinnaam loopt uit naar een 'Apache is functioning normally' pagina. Dat komt omdat onder dat ip verschillende sites zitten. Letterlijk in de mappenstructuur in SmartFTP zie ik bovenaan het IP adres staan, en in een mapje genaamd domeins zitten een aantal websites.

    Hoe kan ik naar onze site komen dmv een ipadres intypen? 81.18.165.26/domains/website oid werkt dus blijkbaar niet.
    #ANONIEMdinsdag 9 juni 2009 @ 10:04
    quote:
    Op dinsdag 9 juni 2009 10:02 schreef Mirel het volgende:
    Hoi. Voor een website waar ik aan werk, moet de URL uiteindelijk anders worden dan dat het nu is. Een ander bedrijf heeft het definitieve domein in handen, en die vroegen ons of we het ip van ónze domein konden geven, zodat als iemand hun URL intypt, hij terechtkomt bij onze site.
    Echter, het ip van onze domeinnaam loopt uit naar een 'Apache is functioning normally' pagina. Dat komt omdat onder dat ip verschillende sites zitten. Letterlijk in de mappenstructuur in SmartFTP zie ik bovenaan het IP adres staan, en in een mapje genaamd domeins zitten een aantal websites.

    Hoe kan ik naar onze site komen dmv een ipadres intypen? 81.18.165.26/domains/website oid werkt dus blijkbaar niet.
    Na 3 keer lezen snap ik nog steeds de vraag niet.
    HuHudinsdag 9 juni 2009 @ 10:06
    Volgens mij moet je dan in je Apache de VirtualHost juist configureren in je httpd.conf. Die ziet op basis van de ingevoerde domeinnaam welke site hij moet pakken.

    Dus die externe partij beheert blijkbaar de DNS voor je domeinnaam en stuurt het verzoek door naar het juiste IP-adres. Vervolgens kom je op jouw server uit en je Apache moet dan aan de hand van de domeinnaam de juiste site pakken. Dat gaat met een VirtualHost.

    Voorbeeld van de Apache site: http://httpd.apache.org/docs/1.3/vhosts/

    1
    2
    3
    4
    5
    <VirtualHost *:80>
    DocumentRoot /www/domain
    ServerName www.domain.tld
    ...
    </VirtualHost>


    Voor elke site op je server heb je dus zo'n VirtualHost staan, die naar de juiste map wijst. Let op het verschil tussen mét en zonder www. voor de domeinnaam.
    spaceninjapiratedinsdag 9 juni 2009 @ 10:10
    quote:
    Op dinsdag 9 juni 2009 10:02 schreef Mirel het volgende:
    Hoi. Voor een website waar ik aan werk, moet de URL uiteindelijk anders worden dan dat het nu is. Een ander bedrijf heeft het definitieve domein in handen, en die vroegen ons of we het ip van ónze domein konden geven, zodat als iemand hun URL intypt, hij terechtkomt bij onze site.
    Echter, het ip van onze domeinnaam loopt uit naar een 'Apache is functioning normally' pagina. Dat komt omdat onder dat ip verschillende sites zitten. Letterlijk in de mappenstructuur in SmartFTP zie ik bovenaan het IP adres staan, en in een mapje genaamd domeins zitten een aantal websites.

    Hoe kan ik naar onze site komen dmv een ipadres intypen? 81.18.165.26/domains/website oid werkt dus blijkbaar niet.
    Ik neem even aan dat je een control panel gebruikt (plesk, cpanel oid ..).
    Je moet dan gewoon op jouw server een pakket aanmaken die precies het zelfde heet als de domeinnaam die het andere bedrijf naar je door stuurt. Dus al gaat test.nl naar jouw server dan moet je een pakket aanmaken test.nl.

    Als je geen control panel hebt dan moet je gaan kloten in apache files. wat in de post hier boven staat dus!

    [ Bericht 1% gewijzigd door spaceninjapirate op 09-06-2009 10:12:20 (spuit 11) ]
    Mireldinsdag 9 juni 2009 @ 12:07
    Snel vraagje, hoe kan ik in een .php bestand een stuk code uitzetten? Ik dacht door te commenten met /* en */, maar dat doet niks.

    1
    2
    <a href="<?php echo JRoute::_('index.php?option=com_simplestforum&view=forumlist'); ?>">
    <span style="font-size:0.8em;">&lt;&lt;</span> <?php echo JText::_('BACK TO FORUM LIST'); ?></a> 

    Het is dus niet alleen php code.
    HuHudinsdag 9 juni 2009 @ 12:09
    Commentaar start je met een /*, maar kun je eindigen met een */ of ?>. Dit werkt dus niet:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    echo 'Doe iets';

    /* Het volgende wil ik niet:
    ?>
    <a href="klik.html">klik</a>
    <?php echo 'lalala';
    */

    doeIets();
    Mireldinsdag 9 juni 2009 @ 12:10
    He vet, ik weet ook dat dat niet werkt want dat zie ik hier nu gebeuren.
    HuHudinsdag 9 juni 2009 @ 12:13
    Dus verzin je iets anders, er zijn zo veel truucjes.

    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    /* Het volgende wil ik niet: */

    if (false)
    {
      
    // het volgende
    }
    ?>


    Simpel en effectief om even tijdelijk je code uit te schakelen.
    Mireldinsdag 9 juni 2009 @ 12:16
    Ja dat werkt wel, maar dan moet ik het tussen de tags inzetten. Is er niet iets waarmee ik de hele chunk uit mijn vorige post kan uitschakelen?

    Zo ziet het er stom uit
    HuHudinsdag 9 juni 2009 @ 12:17
    Dan zet je dit voor je 'chunk':

    1
    2
    3
    <?php
     
    if (false) : 
    ?>


    En dit erna:

    1
    2
    3
    <?php
     
    endif; 
    ?>
    Mireldinsdag 9 juni 2009 @ 12:19
    Vind het niet zo handig eerlijk gezegd. Ik hou het wel op dat ene hoe je het in de print screen ziet.
    Lightdinsdag 9 juni 2009 @ 12:20
    quote:
    Op dinsdag 9 juni 2009 12:09 schreef HuHu het volgende:
    Commentaar start je met een /*, maar kun je eindigen met een */ of ?>. Dit werkt dus niet:
    [ code verwijderd ]
    Huh? Als ik zoiets hier probeer, is ?> duidelijk geen einde van een commentaarblok. Ik krijg dan ook van die leuke unterminated comment meldingen.
    Mireldinsdag 9 juni 2009 @ 12:20
    Ja nee ik delete het gewoon. Lekker BOEIEND.
    HuHudinsdag 9 juni 2009 @ 12:21
    Doe gewoon dit, want dat in je print-screen werkt dus niet zei je net:

    1
    2
    3
    4
    <?php if (false) : ?>
      <a href="<?php echo JRoute::_('index.php?option=com_simplestforum&view=forumlist'); ?>">
      <span style="font-size:0.8em;">&lt;&lt;</span> <?php echo JText::_('BACK TO FORUM LIST'); ?></a>
    <?php endif; ?>
    HuHudinsdag 9 juni 2009 @ 12:27
    quote:
    Op dinsdag 9 juni 2009 12:20 schreef Light het volgende:

    [..]

    Huh? Als ik zoiets hier probeer, is ?> duidelijk geen einde van een commentaarblok. Ik krijg dan ook van die leuke unterminated comment meldingen.
    In de documentatie staat dit:
    quote:
    ?> breaks out of PHP mode and returns to HTML mode
    Als je dus in je commentaar ergens een ?> hebt staan, dan begint daar je HTML-mode weer, wat er voor zorgt dat er uitvoer op het scherm komt die je eigenlijk niet wilde.

    Of heb ik het verkeerd en geldt dat niet voor de /* */ manier van commentaar?
    Mireldinsdag 9 juni 2009 @ 12:38
    Ja mijn doel is om het uit te zetten en het te laten opvallen in de code. Als ik er meer code bijplaats dan wordt het dus niet groen, wat bij notepad++ uitgeschakelde code is. Maar ja.
    Lightdinsdag 9 juni 2009 @ 13:30
    quote:
    Op dinsdag 9 juni 2009 12:27 schreef HuHu het volgende:

    [..]

    In de documentatie staat dit:
    [..]

    Als je dus in je commentaar ergens een ?> hebt staan, dan begint daar je HTML-mode weer, wat er voor zorgt dat er uitvoer op het scherm komt die je eigenlijk niet wilde.

    Of heb ik het verkeerd en geldt dat niet voor de /* */ manier van commentaar?
    Dat geldt niet binnen een /* */ commentaarblok. Waarschijnlijk juist om te voorkomen dat je per ongeluk naar html-mode omschakelt. Na een /* wordt alles tot de eerstvolgende */ genegeerd.
    HuHudinsdag 9 juni 2009 @ 13:31
    Ah... dan had ik het dus verkeerd. Dan kun je iets als <?php /* ?> dit in commentaar <?php */ ?> gebruiken.
    schwa78dinsdag 9 juni 2009 @ 14:01
    Ik wil een zoekfunctie op mijn site bouwen, waarbij je na een zoekopdracht je je keuze kunt verfijnen.

    Voorbeeld op:
    http://www.bcc.nl/beeld/televisie
    http://uk.shopping.com/xPP-monitors--samsung
    Speurders.nl heeft ook

    Nu heb ik geen idee hoe ik zoiets efficient moet programmeren. Ik neem aan dat er niet voor elke zoekoptie een query wordt verzonden om het aantal hits te vinden. Of wel?

    Ik heb al gegoogled maar nergens een tutorial gevonden. Weet iemand een duwtje in de goede richting voor me?
    Chelldinsdag 9 juni 2009 @ 14:22
    Lang, lang geleden, toen internet nog hip was en de bubble nog niet gebarsten was, heb ik een poging gedaan om webdeveloper te worden. De bubble barste en inmiddels ben ik system engineer en fröbel mijn websites in elkaar met handige scriptjes van anderen en dirty html prutswerk , mijn eigen kennis is te ver weggezakt, roestig, bejaard en achterhaalt.
    Maar nu wil ik iets, waar ik niet helemaal uit ga komen zonder een extra stukje programmeerwerk.

    Ik wil Oypo (fotobestelwebsite) integreren in mijn eigen website, of eigenlijk in de klantenalbums (die dezelfde opbouw heben als de gallerypagina's op mijn site).

    Neem als voorbeeld: www.chellsview.nl/kinderen.html. Die pagina's worden opgebouwd met een php scriptje die de foto's en thumbs uit de juiste mapjes haalt ( http://www.dynamicdrive.com/dynamicindex4/php-photoalbum.htm). Dit is gecombineerd met lightbox voor de overlay/popups.

    Oypo biedt dit: http://www.kijk.us/ als basis om vanuit te gaan, maar hier worden alle foto's apart van het javascript voorzien. Dat is geen doen natuurlijk

    Wat ik wil is dit: http://www.lost-viking.co(...)nd_terschelling.html

    Dus de Oypo knop in het lightbox schermpje. Winkelwagentje elders op de gallery pagina. Dat winkelwagentje enzo komt wel goed, dat is het probleem niet.

    Wat ik nodig heb is een manier om die knop in het lightboxding te krijgen, automatisch. Dus een scriptje wat er voor zorgt dat de bestandsnaam e.d. automatisch worden ingevuld.

    Ik ben al een avondje in de source gedoken van lost-viking, maar het kwartje valt niet
    Ik heb de eigenaar van lost-viking ook gemaild, maar omdat ik niet zeker weet of ik daar antwoord van ga krijgen en dit echt graaaag wil, probeer ik het hier ook eventjes.

    Mocht ik in een ander topic moeten zijn, laat het dan even weten, ik weet namelijk niet eens of ik dat scriptje met php moet gaan fröbelen of met javascript....

    *blonT*
    Darkomendinsdag 9 juni 2009 @ 16:06
    Yup, ander topic, want dan moet je de code van je lightbox in gaan en dat is javascript

    De OYPO_BESTELBUTTON array kan je iig wel via php op laten bouwen.
    Loopje welke ook je gallery opbouwt.

    In lightbox.js
    regel 348, 499 en 518 zitten aanpassingen om de oyo addbutton toe te voegen
    hoe dat oypo precies werkt en wat je ervoor moet aanpassen kan ik je niet zeggen.
    Ik zou zeggen pak hun lightbox, vermoedelijk staat er een hardcoded id van oypo in die zal je dan moeten aanpassen.

    [ Bericht 36% gewijzigd door Darkomen op 09-06-2009 16:16:41 ]
    Chelldinsdag 9 juni 2009 @ 17:55
    Ik ga wel weer even prutsen Thnx iig.
    Darkomendinsdag 9 juni 2009 @ 21:56
    Het is dat ik zo'n functie niet zelf nodig heb, anders was ik wel wat gaan rotzooien.
    Lightwoensdag 10 juni 2009 @ 06:36
    quote:
    Op dinsdag 9 juni 2009 13:31 schreef HuHu het volgende:
    Ah... dan had ik het dus verkeerd. Dan kun je iets als <?php /* ?> dit in commentaar <?php */ ?> gebruiken.
    Ja. Trouwens, in een string doet ?> ook niets bijzonders. Je gaat iig niet terug naar html-mode.
    Mirelwoensdag 10 juni 2009 @ 11:46
    quote:
    Op dinsdag 9 juni 2009 10:10 schreef spaceninjapirate het volgende:

    [..]

    Ik neem even aan dat je een control panel gebruikt (plesk, cpanel oid ..).
    Je moet dan gewoon op jouw server een pakket aanmaken die precies het zelfde heet als de domeinnaam die het andere bedrijf naar je door stuurt. Dus al gaat test.nl naar jouw server dan moet je een pakket aanmaken test.nl.

    Als je geen control panel hebt dan moet je gaan kloten in apache files. wat in de post hier boven staat dus!
    Okay, dat werkt, en als de gebruiker nu www.pointerdomain.nl intypt, wordt hij doorverwezen naar www.onzewebsite.org. Dat is de bedoeling, maar het domain www.onzewebsite.org wordt dan in de URL balk gezet. Dit willen we graag voorkomen. Is dat mogelijk met onze Direct admin of moeten we dan het externe bedrijf om een oplossing vragen?

    edit: nu doet ie het wel goed. Hij had zeker tijd nodig ofzo.
    JortKwoensdag 10 juni 2009 @ 12:28
    Kleine TVP hier
    wobbelwoensdag 10 juni 2009 @ 17:48
    Raar probleem....

    Ik heb de pagina page_handler.php welke f_content.php included (dmv require_once).
    f_content.php include op zijn beurt weer f_dutch.php (dmv require_once).

    Nu kan ik op page_handler.php niet de variablen uit f_dutch.php includen...hij zegt dat ze niet gedefined zijn....

    Variablen die ik in f_content.php define werken wel op page_handler.php

    [EDIT]

    Ik heb een class met daarin functies, en als ik daarin een variable define kan ik deze dan niet buiten de class gebruiken? Want als ik op dezelfde pagina een variable define in een class, kan ik die buiten de class niet gebruiken...

    [ Bericht 19% gewijzigd door wobbel op 10-06-2009 18:16:24 ]
    RTHdonderdag 11 juni 2009 @ 16:28
    Hoi allemaal, ik heb maar na een paar jaartjes getwijfeld te hebben toch maar de sprong in het diepe gewaagd om toch maar eens met html, mysql, php, css te gaan bemoeien om van een zero naar hero te groeien, alvast excuses voor de vele inkomende noobvraagjes

    Ik heb basic verstand van html en css en geen program skills, heb wel me eigen webserver draaien

    via deze installer; http://www.apachefriends.org/en/xampp-windows.html
    goed ding als het eenmaal werkt, maar ik had nogal wat aanloop problemen,
    zorg ervoor dat skype bij de install niet draaid want die houd belangerijke poort 80 bezet
    anders zet je in skype>tools>advanced>connection dan et je vinkje uit voor use port 80 + 431 en reboot je pc, zorg er ook voor dat ISS niet draaid,

    nog een andere note; je kunt helaas xampp niet uninstallen en weer installen, beetje kut, maar helaas realiteit!! ik heb op 1 van me pcs problelemen en krijg hem niet opnieuw aan de praat omdat de services bezet zijn etc.

    Nou groetjes allemaal en ik hoop op veel steun die uiteraard in tweevoud terug betaald word

    ik ga nu beginnen met PHP & MySQL For Dummies 3rd edition boekje, hopeljk is dit een goede start voor mij, mochten er betere boeken zijn schroom dan niet om mij een aanbeveling te doen ^^
    Darkomendonderdag 11 juni 2009 @ 17:08
    Succes
    wobbeldonderdag 11 juni 2009 @ 18:01
    is er nog een andere manier ipv wachtwoorden met md5 opslaan? met sha ofzo? Ik mag voor een bepaalde opdracht namelijk geen md5 gebruiken maar het moest iets veiliger zijn
    cablegunmasterdonderdag 11 juni 2009 @ 18:52
    ik raad je aan dit door te lezen

    http://us.php.net/manual/en/function.sha1.php

    moet je even kijken hoe lang de output is maar sha1 is redelijk veilig
    ongv zelfde manier als md5();
    GlowMousedonderdag 11 juni 2009 @ 19:06
    quote:
    Op donderdag 11 juni 2009 18:52 schreef cablegunmaster het volgende:
    moet je even kijken hoe lang de output is maar sha1 is redelijk veilig
    ongv zelfde manier als md5();
    Je houdt het nieuws bij?
    http://tweakers.net/nieuw(...)oudiger-gemaakt.html
    spiertietjesdonderdag 11 juni 2009 @ 19:34
    Tvp
    wobbeldonderdag 11 juni 2009 @ 19:42
    quote:
    Op donderdag 11 juni 2009 19:06 schreef GlowMouse het volgende:

    [..]

    Je houdt het nieuws bij?
    http://tweakers.net/nieuw(...)oudiger-gemaakt.html
    Wat moet ik dan gebruiken volgens jou?
    cablegunmasterdonderdag 11 juni 2009 @ 20:05
    http://www.jiltin.com/ind(...)-my-php-application/

    andere mogelijkheden
    wobbeldonderdag 11 juni 2009 @ 20:12
    quote:
    Op donderdag 11 juni 2009 20:05 schreef cablegunmaster het volgende:
    http://www.jiltin.com/ind(...)-my-php-application/

    andere mogelijkheden
    Werkt niet op mijn PHP installatie

    [edit]

    Nee, geen wonder als je het upload naar de verkeerde server
    Intrepidityvrijdag 12 juni 2009 @ 11:24
    Nog meer fok!ers aanwezig bij de Dutch PHP conference dezer dagen toevallig?
    Catch22-vrijdag 12 juni 2009 @ 11:55
    gewoon een MD5 Hash maken van een Base64 encoded SHA1 string
    Lightvrijdag 12 juni 2009 @ 14:51
    Ik ben bezig met een stuk code waarmee formuliervelden moeten kunnen verschijnen en verdwijnen aan de hand van keuzes die een gebruiker maakt. Op zich niet zo heel spannend, met wat Javascript en een Javascript array is dat goed te doen. Maar ik wil ook <textarea>-velden kunnen laten verschijnen. Nadeel: die dingen kunnen een multiline-inhoud hebben. En dat mag niet in Javascript.

    Ik kan\
    een string\
    over meer\
    regels maken.

    Maar dat werkt ook niet echt, bij het weergeven verdwijnen de enters alsnog.

    Iemand een idee hoe ik kan zorgen dat de inhoud van een textarea, compleet met enters, in een Javascript string kan krijgen alles goed wordt weergegeven? En ik gebruik PHP om de javascript-code te genereren, dus vandaar dat ik het hier post.
    Catch22-vrijdag 12 juni 2009 @ 14:55
    \n gebruiken ?
    Lightvrijdag 12 juni 2009 @ 15:06
    quote:
    Op vrijdag 12 juni 2009 14:55 schreef Catch22- het volgende:
    \n gebruiken ?
    Ik dacht dat ik zo ongeveer alles al getest had, maar kennelijk was ik toch nog iets vergeten.

    De oplossing ligt ook veel te veel voor de hand:
    1
    2
    3
    <?php
    $text 
    str_replace("\n"'\n'addslashes($text));
    ?>


    Thanks :)
    DirkZzvrijdag 12 juni 2009 @ 22:37
    quote:
    Op donderdag 11 juni 2009 19:06 schreef GlowMouse het volgende:

    [..]

    Je houdt het nieuws bij?
    http://tweakers.net/nieuw(...)oudiger-gemaakt.html
    Tjah, op den duur word alles gekraakt.
    Lightvrijdag 12 juni 2009 @ 23:06
    quote:
    Op vrijdag 12 juni 2009 22:37 schreef DirkZz het volgende:

    [..]

    Tjah, op den duur word alles gekraakt.
    De vraag is dan ook niet of zo'n functie te kraken is, maar hoe lang het duurt. De veiligheid wordt gewoon bepaald door hoe lang het duurt om een tekst/bestand te maken die een gegeven hash oplevert.
    wobbelzaterdag 13 juni 2009 @ 10:39
    Oke, waarom werkt dit niet?

    1
    2
    3
    4
    <?php
    $blubwoeiarray 
    = array ( "lol" => "hihi""blaat" => "w00t" );
    $_SESSION['roflpantoffelsessie'] = $blubwoeiarray;
    ?>


    Als ik nu print_r ( $_SESSION['roflpantoffelsessie'] ); doe krijg ik alleen "Array" in beeld
    F04zaterdag 13 juni 2009 @ 10:43
    Over het algemeen kan alles gekraakt worden, daarom is het ook essentieel dat om de x jaar nieuwe beveiligingstechnieken worden toegepast.
    Intrepidityzaterdag 13 juni 2009 @ 13:08
    quote:
    Op zaterdag 13 juni 2009 10:39 schreef wobbel het volgende:
    Oke, waarom werkt dit niet?
    [ code verwijderd ]

    Als ik nu print_r ( $_SESSION['roflpantoffelsessie'] ); doe krijg ik alleen "Array" in beeld
    Misschien omdat het ook een array is?!
    Ik zou zeggen, probeer het met var_dump, of een forloopje op de values uit te printen..
    Lightzaterdag 13 juni 2009 @ 13:26
    quote:
    Op zaterdag 13 juni 2009 13:08 schreef Intrepidity het volgende:

    [..]

    Misschien omdat het ook een array is?!
    Ik zou zeggen, probeer het met var_dump, of een forloopje op de values uit te printen..
    Als het een array is, moet print_r() gewoon weergeven wat er in die array zit. Vergelijkbaar met var_dump(), dus.
    super-muffinzaterdag 13 juni 2009 @ 14:14
    array's en objecten moet je serialzen voor dat ze in een cookie of sessie opslaat en unserializen als je ze er uit haalt.
    GlowMousezaterdag 13 juni 2009 @ 14:17
    quote:
    Op zaterdag 13 juni 2009 14:14 schreef super-muffin het volgende:
    array's en objecten moet je serialzen voor dat ze in een cookie of sessie opslaat en unserializen als je ze er uit haalt.
    Bij sessies is dat zeker niet nodig, en als je met $_COOKIE werkt, betwijfel ik ook dat het nodig is.

    Ik denk zelf dat "Array" niet bij print_r vandaan komt.
    Intrepidityzondag 14 juni 2009 @ 23:16
    quote:
    Op zaterdag 13 juni 2009 13:26 schreef Light het volgende:

    [..]

    Als het een array is, moet print_r() gewoon weergeven wat er in die array zit. Vergelijkbaar met var_dump(), dus.
    Whoops, ik zag de '_r' niet, excuus
    Zelf kan ik de situatie niet nabootsen op 5.2.6 @ win2003. Wat voor machine draait dit op? Wellicht dat het een configuratieissue is.. En wat geeft var_dump aan? Dat het nog steeds een array is of de string "Array"?
    cablegunmasterdinsdag 16 juni 2009 @ 12:31
    Valt er in SQL ook te zien wanneer een status veld voor het laatst veranderd is?
    is daar een functie voor ? of moet ik alsnog een veld aanmaken om dat te zien ?
    Catch22-dinsdag 16 juni 2009 @ 12:32
    on update timestamp ofzo kan je als default value aan een veld geven
    GlowMousedinsdag 16 juni 2009 @ 12:32
    quote:
    Op dinsdag 16 juni 2009 12:31 schreef cablegunmaster het volgende:
    Valt er in SQL ook te zien wanneer een status veld voor het laatst veranderd is?
    is daar een functie voor ? of moet ik alsnog een veld aanmaken om dat te zien ?
    wat is een status veld?
    HuHudinsdag 16 juni 2009 @ 12:32
    SQL is een taal, dus daarin ga je weinig kunnen zien. Als je bijvoorbeeld een database als MySQL gebruikt zou je het in de logbestanden kunnen terugvinden, als je die aan hebt staan en lang genoeg bewaard.

    Anders moet je een extra veld bijhouden met een timestamp lastChanged ofzo.
    Intrepiditydinsdag 16 juni 2009 @ 12:39
    Wat ik meestal wel een nette oplossing voor dat soort dingen vind is een extra tabelletje, iets als events ofzo.. en met een trigger noteer ik daar dan timestamps in die ik moet bewaren. Zo heb je een complete geschiedenis, niet alleen de vorige gebeurtenis.. Misschien wat overkill voor je situatie
    Xcaliburdinsdag 16 juni 2009 @ 13:31
    Ik geef records in principe standaard een timestamp veld met een automatische ON UPDATE erop.
    Dan weet je in ieder geval de laatste wijziging. Afhankelijk van de applicatie maak ik soms ook een log tabel, waarin staat welk record in welke tabel door wie geupdate is

    Edit: en met welke waarde dus, zodat je ook voorgaande wijzigingen kunt terugvinden
    cablegunmasterdinsdag 16 juni 2009 @ 13:32
    quote:
    Op dinsdag 16 juni 2009 12:39 schreef Intrepidity het volgende:
    Wat ik meestal wel een nette oplossing voor dat soort dingen vind is een extra tabelletje, iets als events ofzo.. en met een trigger noteer ik daar dan timestamps in die ik moet bewaren. Zo heb je een complete geschiedenis, niet alleen de vorige gebeurtenis.. Misschien wat overkill voor je situatie
    Juist niet het is een school opdracht dacht ik vraag een brainstorm aan .
    Krijg meerdere ideeen.

    Beste blijft een extra tabel met geschiedenis.

    we moeten op eigen initatief een incident probleem en cofiguratie beheer maken
    Dit zodat een project goed verloopt. een tooltje ervoor schrijven.

    Dit gaan we doen in PHP met veel functies.

    [ Bericht 17% gewijzigd door cablegunmaster op 16-06-2009 19:22:58 ]
    cablegunmasterwoensdag 17 juni 2009 @ 07:31
    bestaat er ook een count functie in php die telt hoevaak ik dezelfde variabele aanmaak?
    bvb $sql ik wou eens gaan kijken per pagina hoeveel querys ik aanmaak. .

    als instantie $sql word aangeroepen +1 voor $count_query of moet ik dan handmatig $count_query++;
    en bovenaan de pagina $count_query = 0;

    er moet een makkelijkere manier zijn ?

    bvb? geen idee of dit werkt :p

    1
    2
    3
    4
    5
    6
    7
    8
    function count_query($sql)
    {
    if(isset($sql)
    {
    return $sqlcount++;
    }
    return 0;
    }


    [ Bericht 29% gewijzigd door cablegunmaster op 17-06-2009 07:40:15 ]
    #ANONIEMwoensdag 17 juni 2009 @ 07:38
    Waarom log je niet gewoon welke query je uitvoert op het moment dat je hem uitvoert? Zo doe ik het iig, tijdens developen log ik alle sql query`s.
    cablegunmasterwoensdag 17 juni 2009 @ 07:40
    quote:
    Op woensdag 17 juni 2009 07:38 schreef Scorpie het volgende:
    Waarom log je niet gewoon welke query je uitvoert op het moment dat je hem uitvoert? Zo doe ik het iig, tijdens developen log ik alle sql query`s.
    Hoe bedoel je met loggen?

    oplossing 1 bij elke query variabele bijstoppen
    1
    2
    $query = "select * blablabal ";
    $count_query++:
    #ANONIEMwoensdag 17 juni 2009 @ 07:42
    quote:
    Op woensdag 17 juni 2009 07:40 schreef cablegunmaster het volgende:

    [..]

    Hoe bedoel je met loggen?
    Naar een log-bestand, een textbestandje met niks anders dan informatie over acties die een gebruiker doet, query`s die uitgevoerd worden, en alle andere informatie waar je als ontwikkelaar wat aan kan hebben als er zich bugs bevinden of tijdens het ontwikkelen.

    Bij mij zie ik bijvoorbeeld heel veel van dit soort statements staan in de logfile:
    quote:
    02-05-2009 21:25:55: DEBUG: coredatabase class - Executed query SELECT * from SB_sandwiches | Duration 0.00066400 seconds


    [ Bericht 18% gewijzigd door #ANONIEM op 17-06-2009 07:43:12 ]
    cablegunmasterwoensdag 17 juni 2009 @ 07:43
    quote:
    Op woensdag 17 juni 2009 07:42 schreef Scorpie het volgende:

    [..]

    Naar een log-bestand, een textbestandje met niks anders dan informatie over acties die een gebruiker doet, query`s die uitgevoerd worden, en alle andere informatie waar je als ontwikkelaar wat aan kan hebben als er zich bugs bevinden of tijdens het ontwikkelen.
    Hoe maak je zoiets ?
    #ANONIEMwoensdag 17 juni 2009 @ 07:45
    quote:
    Op woensdag 17 juni 2009 07:43 schreef cablegunmaster het volgende:

    [..]

    Hoe maak je zoiets :)?
    Vrij simpel: je maakt een aparte class die een textbestandje opent, een regel wegschrijft en weer dicht doet.

    Mijn functie:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    private function log($message$level)
      {
        if (
    CMS_DB_QUERY_DEBUG)
        {
          if (
    $log = @fopen(LOG_FILE"a+"))
          {
            
    $date date(INTERNAL_DATE_CONSTANT);
            
    $string $date.": ".$level.": ".$message;
            
    fwrite($log$string."\r\n");
            
    fclose($log);
          }
          else
          {
            echo 
    "Logging failed!";
          }
        }
      }
    ?>
    cablegunmasterwoensdag 17 juni 2009 @ 07:48
    quote:
    Op woensdag 17 juni 2009 07:45 schreef Scorpie het volgende:

    [..]

    Vrij simpel: je maakt een aparte class die een textbestandje opent, een regel wegschrijft en weer dicht doet.

    Mijn functie:
    [ code verwijderd ]
    ik heb hem gekopieerd :p alleen waar moet ik hem erinstoppen? .
    Log(klootzak alweer een error, $level? admin bvb? :p)

    of doet hij dat automatisch als ik een error heb in de database/php pagina ?
    #ANONIEMwoensdag 17 juni 2009 @ 07:50
    Waar heb je hem precies ingestopt?
    cablegunmasterwoensdag 17 juni 2009 @ 07:51
    quote:
    Op woensdag 17 juni 2009 07:50 schreef Scorpie het volgende:
    Waar heb je hem precies ingestopt?
    in mijn include/functions.php die mee gaat in de include.
    #ANONIEMwoensdag 17 juni 2009 @ 07:54
    Je moet hem wel ff goed nalopen, er staan een aantal constantes van mij in die moet je aanpassen.
    Daarna moet je ff het woord private ervanaf halen, anders kom je er niet bij.

    Daarna is het een kwestie van aanroepen door log("dit ging fout!","error"); te doen.
    cablegunmasterwoensdag 17 juni 2009 @ 07:57
    quote:
    Op woensdag 17 juni 2009 07:54 schreef Scorpie het volgende:
    Je moet hem wel ff goed nalopen, er staan een aantal constantes van mij in die moet je aanpassen.
    Daarna moet je ff het woord private ervanaf halen, anders kom je er niet bij.

    Daarna is het een kwestie van aanroepen door log("dit ging fout!","error"); te doen.
    tof stel ik wil bijhouden welke php errors de gebruiker kreeg op welk bestand

    Alvast bedankt ik denk dat ik dit wel kan aanpassen

    [ Bericht 8% gewijzigd door cablegunmaster op 17-06-2009 08:09:04 ]
    Xcaliburwoensdag 17 juni 2009 @ 08:41
    je kan ook gewoon van $sql een array maken, en daar al je queries inzetten
    Dan kan je met een count($sql) zien hoeveel queries je hebt gedraaid
    cablegunmasterwoensdag 17 juni 2009 @ 09:06
    quote:
    Op woensdag 17 juni 2009 08:41 schreef Xcalibur het volgende:
    je kan ook gewoon van $sql een array maken, en daar al je queries inzetten
    Dan kan je met een count($sql) zien hoeveel queries je hebt gedraaid
    ah dat is een optie die ik zeker ga overwegen .

    maar dan maak ik voor elke query. als praktisch voorbeeld:
    1
    2
    3
    $sql[] = "blablablabla select * from";

    count($sql); 
    ?
    #ANONIEMwoensdag 17 juni 2009 @ 09:12
    quote:
    Op woensdag 17 juni 2009 07:57 schreef cablegunmaster het volgende:

    [..]

    tof stel ik wil bijhouden welke php errors de gebruiker kreeg op welk bestand

    Alvast bedankt ik denk dat ik dit wel kan aanpassen

    Nou ja ik gebruik deze logger vooral om acties te loggen, dus zeg maar wanneer iemand inlogged, dan schrijf ik een regel weg met "Gebruiker A is ingelogged", dat soort dingen.

    Je kan het ook wel gebruiken om errors van PHP te loggen, maar die worden standaard al gelogged.
    cablegunmasterwoensdag 17 juni 2009 @ 09:36
    quote:
    Op woensdag 17 juni 2009 09:12 schreef Scorpie het volgende:

    [..]

    Nou ja ik gebruik deze logger vooral om acties te loggen, dus zeg maar wanneer iemand inlogged, dan schrijf ik een regel weg met "Gebruiker A is ingelogged", dat soort dingen.

    Je kan het ook wel gebruiken om errors van PHP te loggen, maar die worden standaard al gelogged.
    ja , maar ik kom er niet achter hoe ik die kan veranderen. denk dat mijn config file niet meewerkt herstart ik xampp doet hij het nog niet.

    wat ik doe :
    ik open php5.ini C:\xampp\php\php5.ini
    1: reg 353 error_log = "C:\xampp\htdocs\cablegunmaster v3.0\log_file.txt"
    alleen hij wil hem niet zo hebben :p want hij logt nog steeds in de standaard locatie

    het ging me voornamelijk om de php errors te loggen . desnoods tonen

    [ Bericht 6% gewijzigd door cablegunmaster op 17-06-2009 09:42:56 ]
    #ANONIEMwoensdag 17 juni 2009 @ 09:42
    quote:
    Op woensdag 17 juni 2009 09:36 schreef cablegunmaster het volgende:

    [..]

    ja , maar ik kom er niet achter hoe ik die kan veranderen. denk dat mijn config file niet meewerkt herstart ik xampp doet hij het nog niet.

    wat ik doe :
    ik open php5.ini C:\xampp\php\php5.ini
    1: reg 353 error_log = "C:\xampp\htdocs\cablegunmaster v3.0\log_file.txt"
    alleen hij wil hem niet zo hebben :p want hij logt nog steeds in de standaard locatie
    Das ook wat anders dan deze loggerclass die ik gemaakt heb

    zet eens voor de functie LOG_FILE = "c:\log.txt";

    [ Bericht 3% gewijzigd door #ANONIEM op 17-06-2009 09:42:38 ]
    cablegunmasterwoensdag 17 juni 2009 @ 09:43
    quote:
    Op woensdag 17 juni 2009 09:42 schreef Scorpie het volgende:

    [..]

    Das ook wat anders dan deze loggerclass die ik gemaakt heb

    zet eens voor de functie LOG_FILE = "c:\log.txt";
    Kwam ik ook achter dit is voor nette foutmelding naar de user toe na een paar paginas door te lezen

    heb het al gefixt stomme ; ervoor . lees er soms ook over heen kleine fouten waar ik op zit .
    dit maar eens doorgeven aan m'n webhost dit bestandje ^^ , kan het zelf namelijk niet aanpassen .

    stomme webhost

    [ Bericht 26% gewijzigd door cablegunmaster op 17-06-2009 09:49:38 ]
    Intrepiditywoensdag 17 juni 2009 @ 09:55
    Over het loggen van SQL queries gesproken.. Is er ook een manier om af te vangen wat er EXACT naar de database gestuurd word? Ik maak gebruik van PDO, en als ik mijn queries log staan de variabelen hier nog in.. iets als "SELECT * FROM tabel WHERE veld = :waarde". Bij debuggen heb ik daar soms niet zo gek veel aan..
    Xcaliburwoensdag 17 juni 2009 @ 10:37
    quote:
    Op woensdag 17 juni 2009 09:06 schreef cablegunmaster het volgende:

    [..]

    ah dat is een optie die ik zeker ga overwegen .

    maar dan maak ik voor elke query. als praktisch voorbeeld:
    [ code verwijderd ]

    ?
    In principe wel ja. Het is alleen wel handig om je query een naam te geven
    $sql['query_1'] = ''; dus
    Tuvai.netwoensdag 17 juni 2009 @ 13:01
    quote:
    Op woensdag 17 juni 2009 09:55 schreef Intrepidity het volgende:
    Over het loggen van SQL queries gesproken.. Is er ook een manier om af te vangen wat er EXACT naar de database gestuurd word? Ik maak gebruik van PDO, en als ik mijn queries log staan de variabelen hier nog in.. iets als "SELECT * FROM tabel WHERE veld = :waarde". Bij debuggen heb ik daar soms niet zo gek veel aan..
    Ik heb zelf een functie die mysql_query() overkoepelt en wanneer ik mijn Boolean $Log aan zet, de queries die uitgevoerd worden in String-vorm naar een log bestand schrijven. Want de query die je in functie mysql_query() gebruikt is niet meer dan dat, een String.
    Intrepiditywoensdag 17 juni 2009 @ 14:41
    quote:
    Op woensdag 17 juni 2009 13:01 schreef Tuvai.net het volgende:

    [..]

    Ik heb zelf een functie die mysql_query() overkoepelt en wanneer ik mijn Boolean $Log aan zet, de queries die uitgevoerd worden in String-vorm naar een log bestand schrijven. Want de query die je in functie mysql_query() gebruikt is niet meer dan dat, een String.
    Ja, maar ik wil wel gebruik blijven maken van PDO in combinatie met prepared statements, dus da ga nie werken nie.
    urselwoensdag 17 juni 2009 @ 14:57
    quote:
    Op woensdag 17 juni 2009 13:01 schreef Tuvai.net het volgende:

    [..]

    Ik heb zelf een functie die mysql_query() overkoepelt en wanneer ik mijn Boolean $Log aan zet, de queries die uitgevoerd worden in String-vorm naar een log bestand schrijven. Want de query die je in functie mysql_query() gebruikt is niet meer dan dat, een String.
    Zoiets gelijks hebben wij hier ook inderdaad.
    Daarnaast wordt per classe eigenlijk de log-classe aangeroepen, zodat we allerlei logs gescheiden van elkaar in ieders een aparte folder bewaren en wordt er 1 log file per dag gecreëerd.
    Likkende_Lassiedonderdag 18 juni 2009 @ 17:30
    Vraagje:

    Ik heb de volgende functie om te berekenen hoeveel afstand er tussen 2 coordinaten zit:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    function afstandTotPunt($lat1,$lng1,$lat2,$lng2) {
       
       
    $a1 deg2rad($lat1); //lat 1 in radialen
       
    $a2 deg2rad($lat2); //lat 2 (het xcoordinaat) in radialen
       
    $b1 deg2rad($lng1); //lng 1 in radialen
       
    $b2 deg2rad($lng2); //lng 2 (het ycoordinaat) in radialen
       
       
    $r 6378.8//de radius / straal van de aarde in kilometers
       
       
    return (acos(cos($a1)*cos($b1)*cos($a2)*cos($b2) + cos($a1)*sin($b1)*cos($a2)*sin($b2) + sin($a1)*sin($a2)) * $r);


    }
    ?>


    Echter, nu heb ik een database met +300.000 records.
    Ik wil dat de gebruiker kan zeggen: ik wil binnen een straal van xx KM de resultaten zien.
    Dat kunnen ze doen door een postcode in te vullen, waar ik een ander script voor heb om de coordinaten te berekenen.

    Maar, om nu elk record te doorlopen om te kijken wat de afstand is, komt natuurlijk niet ten goede van de performance.

    Weet iemand hoe ik het bovenstaande het beste kan berekenen? Ik heb in de database de coordinaten al opgeslagen. Dus ik zou eigenlijk in mijn mysql query kunnen zoeken op bijvoorbeeld: LIKE Lat = 1234'%' ,,, maar hoe dit te berekenen?
    GlowMousedonderdag 18 juni 2009 @ 17:34
    Vantevoren een afstandenmatrix uitrekenen, dat is het snelste.
    Likkende_Lassiedonderdag 18 juni 2009 @ 18:21
    En hoe gaat dat in zn werk ?
    Lightdonderdag 18 juni 2009 @ 19:38
    quote:
    Op donderdag 18 juni 2009 18:21 schreef Likkende_Lassie het volgende:
    En hoe gaat dat in zn werk ?
    Je hebt die 300.000+ records in een database. Ik neem aan dat die dingen ook allemaal een eigen id hebben. Dan maak je een tabel aan met de velden id1, id2 en afstand (vergeet ook de indexen niet). En een scriptje om die tabel te vullen.

    pseudocode:
    1
    2
    3
    4
    5
    6
    7
    8
    x = totaalAantalPunten();
    for(i = 1; i <= x; i++) {
      for(j = i + 1; j <= x; j++) {
        afstand = berekenAfstand(i, j)
        sql = 'insert into matrix(id1, id2, afstand) values (i, j, afstand)'
        doQuery(sql);
      }
    }


    Voordeel: je berekent iedere afstand maar 1 keer.
    Nadeel: bij het opvragen van afstanden moet je er rekening mee houden dat het punt met het hoogste id altijd als tweede genoemd wordt.
    Xcaliburdonderdag 18 juni 2009 @ 19:45
    je kan ze ook ALLEMAAL uitrekenen

    Dus zowel de heenweg als de terugweg zeg maar... Dan voorkom je je nadeel, en heb je feitelijk de helft aan overbodige records
    Lightdonderdag 18 juni 2009 @ 19:56
    quote:
    Op donderdag 18 juni 2009 19:45 schreef Xcalibur het volgende:
    je kan ze ook ALLEMAAL uitrekenen

    Dus zowel de heenweg als de terugweg zeg maar... Dan voorkom je je nadeel, en heb je feitelijk de helft aan overbodige records
    Ja, ik had de drie weken vakantie nog maar niet genoemd
    Likkende_Lassievrijdag 19 juni 2009 @ 09:28
    Ja maar... zo kan ik de afstand van slechts 1 startlocatie opslaan

    Er zullen straks flink wat gebruikers verschillende startpunten gaan invoeren, waardoor de afstand per locatie scheelt. Toch?
    GlowMousevrijdag 19 juni 2009 @ 11:18
    Oh, de gebruiker heeft zelf een onbekende lokatie. Kun je niet al heel snel heel veel opties wegstrepen als het verschil in latitude of longitude te groot is? Op latitude kun je in Nederland al best goed filtreren, dus als je daar een index opzet en dan WHERE latitude BETWEEN .. AND ... AND longitude BETWEEN .. AND ... gebruikt dan zal het wel flink sneller worden.

    [ Bericht 0% gewijzigd door GlowMouse op 20-06-2009 12:09:11 ]
    Likkende_Lassievrijdag 19 juni 2009 @ 12:52
    Zoiets zou opzich wel moeten kunnen denk ik ja. Maar, hoe bereken je de lat/long die je in de SQL query gebruikt?
    Intrepidityvrijdag 19 juni 2009 @ 13:00
    Kun je het niet generaliseren tot stad/dorp/iets groters dan de exacte coordinaten van de postcode, en een tabel maken die de afstand tussen die grotere blokken opslaat? Tenzij het erg is dat de meting niet 100% nauwkeurig is natuurlijk, dan is dat geen optie.. Mocht je de exacte afstand alsnog willen weten kun je alles selecteren waarbij de afstand tussen de 2 dorpen zegmaar <55km is, daar de exacte afstanden van berekenen, en dan alles <50km weergeven.. ofzoiets..
    splendorvrijdag 19 juni 2009 @ 18:33
    Ik wil een str_ireplace gebruiken om een link ergens omheen te zetten, maar hij moet het originele woord niet veranderen qua hoofd/kleine letters. Is dat mogelijk of wordt het een eregi oid?
    Bijvoorbeeld "Dit IS eEn Test" wordt niet "dit is een test" (met link eromheen dan).
    Lightvrijdag 19 juni 2009 @ 19:09
    quote:
    Op vrijdag 19 juni 2009 18:33 schreef splendor het volgende:
    Ik wil een str_ireplace gebruiken om een link ergens omheen te zetten, maar hij moet het originele woord niet veranderen qua hoofd/kleine letters. Is dat mogelijk of wordt het een eregi oid?
    Bijvoorbeeld "Dit IS eEn Test" wordt niet "dit is een test" (met link eromheen dan).
    Ik zou preg_replace() gebruiken.
    Intrepidityvrijdag 19 juni 2009 @ 23:51
    quote:
    Op vrijdag 19 juni 2009 19:09 schreef Light het volgende:

    [..]

    Ik zou preg_replace() gebruiken.
    Lekker goed voor de performance ook
    Aangezien de functionaliteit in php (afaik) niet bestaat om hoofdletterongevoelig te vergelijken maar vervolgens wel de hoofdletters te behouden zou ik er gewoon een eigen functietje voor maken:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    function str_ireplace_case($input$compare)
    {
        if(
    strcasecmp($input$compare) === 0)
           return 
    "<a href=\"whatever\">{$input}</a>";
        else
           return 
    $input;
    }
    ?>

    Stuk beter voor de performance dan een regular expression
    Lightzaterdag 20 juni 2009 @ 00:08
    quote:
    Op vrijdag 19 juni 2009 23:51 schreef Intrepidity het volgende:

    [..]

    Lekker goed voor de performance ook
    Aangezien de functionaliteit in php (afaik) niet bestaat om hoofdletterongevoelig te vergelijken maar vervolgens wel de hoofdletters te behouden zou ik er gewoon een eigen functietje voor maken:
    [ code verwijderd ]

    Stuk beter voor de performance dan een regular expression
    Ik ben het met je eens dat het sneller is als je geen regular expression nodig hebt. Maar van de regular expression functies presteren de preg_* functies over het algemeen veel beter dan de ereg_* functies.

    En jouw functie is leuk, maar werkt alleen als de input een exacte match is met de compare-tekst (hoofdletters buiten beschouwing gelaten). Met preg_replace() mag er ook tekst voor en/of achter de gezochte tekst staan en kun je toch een goede vervanging maken.
    Intrepidityzaterdag 20 juni 2009 @ 00:22
    quote:
    Op zaterdag 20 juni 2009 00:08 schreef Light het volgende:

    [..]

    Ik ben het met je eens dat het sneller is als je geen regular expression nodig hebt. Maar van de regular expression functies presteren de preg_* functies over het algemeen veel beter dan de ereg_* functies.

    En jouw functie is leuk, maar werkt alleen als de input een exacte match is met de compare-tekst (hoofdletters buiten beschouwing gelaten). Met preg_replace() mag er ook tekst voor en/of achter de gezochte tekst staan en kun je toch een goede vervanging maken.
    Goed punt, het is ook al laat Het is opzich wel werkend te krijgen met een stripos.. Maar tenzij je deze functionaliteit een paar 1000 keer op een pagina gebruikt is de tijdswinst zo minimaal dat je inderdaad beter af bent met een simpele regex
    HenryHillzaterdag 20 juni 2009 @ 10:44
    quote:
    Op donderdag 18 juni 2009 17:30 schreef Likkende_Lassie het volgende:
    Vraagje:

    Ik heb de volgende functie om te berekenen hoeveel afstand er tussen 2 coordinaten zit:
    [ code verwijderd ]

    Echter, nu heb ik een database met +300.000 records.
    Ik wil dat de gebruiker kan zeggen: ik wil binnen een straal van xx KM de resultaten zien.
    Dat kunnen ze doen door een postcode in te vullen, waar ik een ander script voor heb om de coordinaten te berekenen.

    Maar, om nu elk record te doorlopen om te kijken wat de afstand is, komt natuurlijk niet ten goede van de performance.

    Weet iemand hoe ik het bovenstaande het beste kan berekenen? Ik heb in de database de coordinaten al opgeslagen. Dus ik zou eigenlijk in mijn mysql query kunnen zoeken op bijvoorbeeld: LIKE Lat = 1234'%' ,,, maar hoe dit te berekenen?
    Wat is een te verwachten waarde voor de straal? 1km? 10km? 100km? Dit is namelijk heel erg bepalend voor hoeveel procent van je records je terug zou kunnen krijgen. Bij 100km zou je in theorie bijna alle locaties terug kunnen krijgen, dus dan heeft slim querien weinig zin, bijvoorbeeld.

    Stel dat je straal maximaal zo'n 40 km is, dan zou je het volgende kunnen doen:
    * Sla de lattitude op in z'n eigen kolom, met een aparte index op alleen deze kolom.
    * Sla de longitude op in z'n eigen kolom, met een aparte index op alleen deze kolom.
    * Als je gaat querien, gebruik dan niet de cirkel met een straal van X kilometer, maar het vierkant wat deze cirkel omsluit (oftewel "teken het kleinst mogelijke vierkant om de cirkel met straal X"). Het voordeel is dat je deze vierkant rechtstreeks kan gebruiken in je query ("WHERE Lat between 51,201 and 51,323 and Long between 54.30 and 54.37") en dat dit geoptimaliseerd kan door de indexen op de Lat en Long kolommen.
    * De resultset die je terugkrijgt bevat nu nog wel punten die wel binnen het vierkant vielen, maar niet binnen de cirkel. Deze zul je er in code uit moeten filteren met de berekening die je postte, maar dat is niet zo erg, omdat dit slechts ong. 20% van je rijen zal betreffen - de overige 80% valt zowel binnen het vierkant als binnen de cirkel.

    Dit lijkt me de best haalbare combinatie van een eenvoudige query die relatief weinig nutteloze rijen teruggeeft.
    GlowMousezaterdag 20 juni 2009 @ 11:23
    quote:
    Op zaterdag 20 juni 2009 10:44 schreef HenryHill het volgende:
    Het voordeel is dat je deze vierkant rechtstreeks kan gebruiken in je query ("WHERE Lat between 51,201 and 51,323 and Long between 54.30 and 54.37") en dat dit geoptimaliseerd kan door de indexen op de Lat en Long kolommen.
    Niet waar, ook met MySQL 5.x niet:
    quote:
    If a range scan is possible on some key, the optimizer will not consider using Index Merge Union or Index Merge Sort-Union algorithms. For example, consider this query
    HenryHillzaterdag 20 juni 2009 @ 11:40
    quote:
    Op zaterdag 20 juni 2009 11:23 schreef GlowMouse het volgende:

    [..]

    Niet waar, ook met MySQL 5.x niet:
    [..]
    Hmm, volgens mij zou je dan het stuk over index intersections moeten quoten, en ik maak hieruit op dat MySQL dan wel beide indexen gebruikt?

    Ik gebruik zelf geen MySQL, dus ik kan het niet testen, maar gelet op de documentatie (en mijn gevoel bij wat je van een redelijke RDBMS zou mogen verwachten) geef ik het eigenlijk wel een goede kans dat het wel geoptimaliseerd wordt.
    GlowMousezaterdag 20 juni 2009 @ 11:46
    quote:
    Op zaterdag 20 juni 2009 11:40 schreef HenryHill het volgende:

    [..]

    Hmm, volgens mij zou je dan het stuk over index intersections moeten quoten, en ik maak hieruit op dat MySQL dan wel beide indexen gebruikt?
    De enige ongelijkheid die ik zie staan daar is er eentje op een primary key van een InnoDB-tabel. Dat zal er wel mee te maken hebben dat die key bij elke entry in de index op key_col1 opgeslagen wordt, en MySQL dus eigenlijk alleen de index op key_col1 hoeft te raadplegen en daarbij direct en 'gratis' de ongelijkheid kan checken.

    Queries op grote tabellen die geen resultaat kunnen geven op basis van maximaal één index, vermijd ik zelf liever bij webapplicaties. Combineren van indices is in ieder geval in MySQL een stuk trager dan het gebruik van één index. Plus dat je ook vaak wilt sorteren, en dat lukt niet met twee indices.
    HenryHillzaterdag 20 juni 2009 @ 12:05
    quote:
    Op zaterdag 20 juni 2009 11:46 schreef GlowMouse het volgende:

    [..]

    De enige ongelijkheid die ik zie staan daar is er eentje op een primary key van een InnoDB-tabel.
    Oh, zo, ja dat zou ook kunnen. Ik lette met name op het feit dat alle condities met AND's gecombineerd moesten worden en dat per index al zijn kolommen in de conditie aanwezig moesten zijn. Daar lijkt mijn oplossing aan te voldoen, maar inderdaad, bij het gegeven voorbeeld gebruiken ze geen ongelijkheden.
    Dus de vraag is of we daaruit moeten afleiden dat dit deel van het algoritme alleen met gelijkheden werkt.
    quote:
    Dat zal er wel mee te maken hebben dat die key bij elke entry in de index op key_col1 opgeslagen wordt, en MySQL dus eigenlijk alleen de index op key_col1 hoeft te raadplegen en daarbij direct en 'gratis' de ongelijkheid kan checken.
    Ik heb een andere verklaring Ik denk dat InnoDB zijn primary key index altijd 'clustered' maakt, d.w.z. dat de records fysiek geordend op primary key worden opgeslagen. En wanneer gegevens fysiek gesorteerd opgeslagen zijn, is het heel efficient om een range query uit te voeren: je zoekt het beginpunt, het eindpunt, en je retourneert alle rijen ertussenin.
    quote:
    Queries op grote tabellen die geen resultaat kunnen geven op basis van maximaal één index, vermijd ik zelf liever bij webapplicaties.
    De meeste webapplicaties gebruiken dan ook geen coordinaten
    GlowMousezaterdag 20 juni 2009 @ 12:09
    quote:
    Op zaterdag 20 juni 2009 12:05 schreef HenryHill het volgende:
    Ik heb een andere verklaring Ik denk dat InnoDB zijn primary key index altijd 'clustered' maakt, d.w.z. dat de records fysiek geordend op primary key worden opgeslagen. En wanneer gegevens fysiek gesorteerd opgeslagen zijn, is het heel efficient om een range query uit te voeren: je zoekt het beginpunt, het eindpunt, en je retourneert alle rijen ertussenin.
    Maar wat doe je dan met die index op key_col1?

    edit: EXPLAIN geeft aan toch iets te doen met index_intersect. Vreemd, ik zou zeggen dat alleen de index op key_col1 gebruiken efficienter is.
    HenryHillzaterdag 20 juni 2009 @ 12:14
    quote:
    Op zaterdag 20 juni 2009 12:09 schreef GlowMouse het volgende:

    [..]

    Maar wat doe je dan met die index op key_col1?
    Het feit dat je gegevens fysiek geordend zijn op key_col1 maakt dat de tabel al geindexeerd is - het heeft geen aparte opslagstructuur nodig. Je tabel is tevens je index, als het ware.

    Je snapt dat dit trucje maar voor 1 index toepasbaar is - je kunt je tabel tenslotte maar op 1 manier fysiek gesorteerd opslaan. Dus voor alle andere indexen zul je wel een aparte opslagstructuur moeten bijhouden.
    quote:
    edit: EXPLAIN geeft aan toch iets te doen met index_intersect. Vreemd, ik zou zeggen dat alleen de index op key_col1 gebruiken efficienter is.
    Welke situatie heb je nu uitgeprobeerd dan?

    [ Bericht 15% gewijzigd door HenryHill op 20-06-2009 12:19:48 ]
    cablegunmasterzaterdag 20 juni 2009 @ 19:42
    http://www.sitemasters.be(...)s_online_script_v2.0

    Bezoekers online script zeer onveilig. zitten er leuke ideeën in.
    Het grappig is dat de meeste scripts online niet aan de veiligheid denken maar wel aan het script zelf.

    Dit script is opzich wel een leuk idee. Jammer van de sql escape.
    splendorzaterdag 20 juni 2009 @ 19:48
    quote:
    Op vrijdag 19 juni 2009 19:09 schreef Light het volgende:

    [..]

    Ik zou preg_replace() gebruiken.
    Dankje, die werkte een stuk beter.
    Alleen heb ik met /b gezegd dat het alleen hele woorden moeten zijn, maar dat pakt ie niet erg.
    Lightzaterdag 20 juni 2009 @ 20:37
    quote:
    Op zaterdag 20 juni 2009 19:48 schreef splendor het volgende:

    [..]

    Dankje, die werkte een stuk beter.
    Alleen heb ik met /b gezegd dat het alleen hele woorden moeten zijn, maar dat pakt ie niet erg.
    Moet je dat niet met \b doen?
    cablegunmasterzaterdag 20 juni 2009 @ 22:16
    Vraag hoe zetten jullie je website op ?

    ik neem aan een ... header + footer aparte files een configuration.php met alle functions.

    hoe doen jullie het met alle pagina's toevoegen met bvb www.website.nl/pagina/ ipv pagina.php
    is daar een scriptje voor? of gebruiken jullie htacces?

    Want ik zit nu in een mentale knoop in m'n hoofd. genoeg leuke scriptjes en ideetjes. maar een opzet in m'n kop loop ik mee vast
    GlowMousezaterdag 20 juni 2009 @ 22:22
    quote:
    Op zaterdag 20 juni 2009 12:14 schreef HenryHill het volgende:

    [..]

    Welke situatie heb je nu uitgeprobeerd dan?
    Een WHERE pkey>val1 AND other_key=val2.
    Maar als de PK de tabel zelf is, dan zou het dom zijn om die te raadplegen / een rij op te halen als dat ook al uit de andere index op te maken valt.
    quote:
    Op zaterdag 20 juni 2009 22:16 schreef cablegunmaster het volgende:
    Vraag hoe zetten jullie je website op ?

    ik neem aan een ... header + footer aparte files een configuration.php met alle functions.

    hoe doen jullie het met alle pagina's toevoegen met bvb www.website.nl/pagina/ ipv pagina.php
    is daar een scriptje voor? of gebruiken jullie htacces?

    Want ik zit nu in een mentale knoop in m'n hoofd. genoeg leuke scriptjes en ideetjes. maar een opzet in m'n kop loop ik mee vast
    map met includes (oa init.php), map met templates (oa header/footer.php), map met plaatjes, en voor elke pagina een pagina.php.
    cablegunmasterzaterdag 20 juni 2009 @ 22:25
    quote:
    Op zaterdag 20 juni 2009 22:22 schreef GlowMouse het volgende:

    map met includes (oa init.php), map met templates (oa header/footer.php), map met plaatjes, en voor elke pagina een pagina.php.
    maar hoe doe je het eigenlijk met het omzetten dat je de .php niet meer ziet? .
    GlowMousezaterdag 20 juni 2009 @ 22:26
    quote:
    Op zaterdag 20 juni 2009 22:25 schreef cablegunmaster het volgende:

    [..]

    maar hoe doe je het eigenlijk met het omzetten dat je de .php niet meer ziet? .
    Als ik mij daar al druk om maak, mod_rewrite.
    cablegunmasterzaterdag 20 juni 2009 @ 22:45
    quote:
    Op zaterdag 20 juni 2009 22:26 schreef GlowMouse het volgende:

    [..]

    Als ik mij daar al druk om maak, mod_rewrite.
    ik ga dit eens doornemen

    http://www.sitepoint.com/article/guide-url-rewriting/

    lijkt me droge kost en na verloop van tijd simpeler om een variabel van te maken . als mogelijk
    GlowMousezaterdag 20 juni 2009 @ 22:51
    quote:
    Op zaterdag 20 juni 2009 22:45 schreef cablegunmaster het volgende:

    [..]

    ik ga dit eens doornemen

    http://www.sitepoint.com/article/guide-url-rewriting/

    lijkt me droge kost en na verloop van tijd simpeler om een variabel van te maken . als mogelijk
    RewriteRule ^nieuws/(.*)$ page/nieuws.php [NC]
    Zo lastig is dat niet. Die .php-files stop ik dan wel in een andere, niet te bezoeken map.
    cablegunmasterzondag 21 juni 2009 @ 09:43
    Maar dan zat ik met het volgende probleem:

    de functie als het bestand bestaat dat hij hem weergeeft en anders error bestand bestaat niet.
    probleem:
    index.php
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    //werkt bestand bestaat
    $file = "index.php";
    if (file_exists($file)) {
        echo "1.The file $file exists";
    } else {
        echo "1.The file $file does not exist";
    }

    // poging 2 met een variabele url.

    $file = basename($path,".php");
    echo "<br>".$file."<br/>";
    if (file_exists($file)) {
        echo "2.The file $file exists";
    } else {
        echo "2.The file $file does not exist<br/>";
    }


    basename kan ik hiervoor niet gebruiken? terwijl ze beide als output geven

    1. The file index.php exist.
    2. The file index.php does not exist.
    bij 2 echo krijg je index.php te zien.
    Raar... in mijn ogen zit er precies hetzelfde in de functie

    uiteindelijk wou ik een vervanging voor een soort van Iframe in php .

    [ Bericht 4% gewijzigd door cablegunmaster op 21-06-2009 09:51:23 ]
    Lightzondag 21 juni 2009 @ 09:53
    quote:
    Op zondag 21 juni 2009 09:43 schreef cablegunmaster het volgende:
    Maar dan zat ik met het volgende probleem:

    de functie als het bestand bestaat dat hij hem weergeeft en anders error bestand bestaat niet.
    probleem:
    index.php
    [ code verwijderd ]

    basename kan ik hiervoor niet gebruiken? terwijl ze beide als output geven

    1. The file index.php exist.
    2. The file index.php does not exist.
    bij 2 echo krijg je index.php te zien.
    Raar... in mijn ogen zit er precies hetzelfde in de functie

    uiteindelijk wou ik een vervanging voor een soort van Iframe in php .
    Wat is de waarde van $path ?
    cablegunmasterzondag 21 juni 2009 @ 09:56
    quote:
    Op zondag 21 juni 2009 09:53 schreef Light het volgende:

    [..]

    Wat is de waarde van $path ?
    echo $path;
    cablegunmaster v3.0/index.php
    met behulp van $_SERVER['PHP_SELF'];
    en dan komt het met basename eruitrollen als index

    hmm... eens even controleren. ik verwijder een br en opeens komt er index uitrollen ipv index.php zit ergens een foutje in hij pakt de .php niet. volgens mij hoort dit .php er niet eens te staan

    1
    2
    3
    4
    5
    6
    7
    8
    $path = $_SERVER['PHP_SELF'];
    $file = basename($path);
    echo "<br>".$file."<br/>";
    if (file_exists($file)) {
        echo "1.The file $file exists";
    } else {
        echo "1.The file $file does not exist<br/>";
    }


    opgelost namelijk .php ik dacht dat hij dat in basename toevoegde. maar blijkbaar verwijderde hij dat.

    Handig scriptje controleert of het bestand bestaat en echot het dan ^^. nu nog een paar checks inbouwen

    [ Bericht 8% gewijzigd door cablegunmaster op 21-06-2009 10:03:58 ]
    Likkende_Lassiezondag 21 juni 2009 @ 09:59
    quote:
    Op zaterdag 20 juni 2009 10:44 schreef HenryHill het volgende:

    [..]

    Wat is een te verwachten waarde voor de straal? 1km? 10km? 100km? Dit is namelijk heel erg bepalend voor hoeveel procent van je records je terug zou kunnen krijgen. Bij 100km zou je in theorie bijna alle locaties terug kunnen krijgen, dus dan heeft slim querien weinig zin, bijvoorbeeld.

    Stel dat je straal maximaal zo'n 40 km is, dan zou je het volgende kunnen doen:
    * Sla de lattitude op in z'n eigen kolom, met een aparte index op alleen deze kolom.
    * Sla de longitude op in z'n eigen kolom, met een aparte index op alleen deze kolom.
    * Als je gaat querien, gebruik dan niet de cirkel met een straal van X kilometer, maar het vierkant wat deze cirkel omsluit (oftewel "teken het kleinst mogelijke vierkant om de cirkel met straal X"). Het voordeel is dat je deze vierkant rechtstreeks kan gebruiken in je query ("WHERE Lat between 51,201 and 51,323 and Long between 54.30 and 54.37") en dat dit geoptimaliseerd kan door de indexen op de Lat en Long kolommen.
    * De resultset die je terugkrijgt bevat nu nog wel punten die wel binnen het vierkant vielen, maar niet binnen de cirkel. Deze zul je er in code uit moeten filteren met de berekening die je postte, maar dat is niet zo erg, omdat dit slechts ong. 20% van je rijen zal betreffen - de overige 80% valt zowel binnen het vierkant als binnen de cirkel.

    Dit lijkt me de best haalbare combinatie van een eenvoudige query die relatief weinig nutteloze rijen teruggeeft.
    Ik begrijp wat je/jullie zeggen, maar mijn vraag is eigenlijk eenvoudig :
    Hoeveel is Lat / Long + bijvoorbeeld 10 of 100 Kilometer?
    Dan zal de techniek erachter wel moeten lukken!
    cablegunmasterzondag 21 juni 2009 @ 10:20
    nu nog 1 andere vraag de hele bedoeling van het Iframe scriptje was dat hij als ik een pagina klikte het ergens anders tevoorschijn kwam. en controleerde of de pagina bestond. nu nog de vraag kan ik dit dynamisch maken?

    dus bvb.. als ik de <a href="test.php">test</a> klikt dat hij dit toont ergens op m'n pagina. of zal ik dit hardcoded in een case moeten stouwen?

    ik heb nu al 2 mogelijkheden gezien

    1: via usergroeps dmv als usergroep 0 = roep deze array aan met alle links en titels omschrijvingen erin en echo die eronder. en dan als je op de omschrijving ahref drukt voegt hij een url erachter toe en required hij die erin

    2: via get['page']

    welke gebruiken jullie?

    [ Bericht 36% gewijzigd door cablegunmaster op 21-06-2009 11:11:03 ]
    GlowMousezondag 21 juni 2009 @ 11:28
    quote:
    Op zondag 21 juni 2009 09:43 schreef cablegunmaster het volgende:
    Maar dan zat ik met het volgende probleem:

    de functie als het bestand bestaat dat hij hem weergeeft en anders error bestand bestaat niet.
    Je had aan de beveiliging gedacht?
    quote:
    Op zondag 21 juni 2009 09:59 schreef Likkende_Lassie het volgende:

    [..]

    Ik begrijp wat je/jullie zeggen, maar mijn vraag is eigenlijk eenvoudig :
    Hoeveel is Lat / Long + bijvoorbeeld 10 of 100 Kilometer?
    Dan zal de techniek erachter wel moeten lukken!
    Je dacht dat ik uit ging zoeken voor je hoe je rekent met lat/long?
    cablegunmasterzondag 21 juni 2009 @ 12:23
    quote:
    Op zondag 21 juni 2009 11:28 schreef GlowMouse het volgende:

    [..]

    Je had aan de beveiliging gedacht?
    hoe bedoel je?

    Je kan namelijk 404 pagina opgeven van dat hij niet bestaat. en de htacces dat de map page met de pagina's niet toegangelijk is.
    Likkende_Lassiezondag 21 juni 2009 @ 12:24
    quote:
    Op zondag 21 juni 2009 11:28 schreef GlowMouse het volgende:

    [..]

    Je dacht dat ik uit ging zoeken voor je hoe je rekent met lat/long?
    Nougoed, als iemand enig idee heeft hoe de som in elkaar zit, graag!
    GlowMousezondag 21 juni 2009 @ 12:27
    quote:
    Op zondag 21 juni 2009 12:23 schreef cablegunmaster het volgende:

    [..]

    hoe bedoel je?
    Dat ik geen pagina's kan opvragen waarvan jij niet wilt dat ik ze kan opvragen. Bv je index.php maar ook files in een andere map.
    cablegunmasterzondag 21 juni 2009 @ 12:30
    quote:
    Op zondag 21 juni 2009 12:27 schreef GlowMouse het volgende:

    [..]

    Dat ik geen pagina's kan opvragen waarvan jij niet wilt dat ik ze kan opvragen. Bv je index.php maar ook files in een andere map.
    ah nee de beveiliging is htacces ingesteld dat je bepaalde mappen geen toegang hebt. via get maar wel via a href kan weergeven dus kun je niet extern op de pagina komen.

    via een array de pagina lijst menu weergeven en dan

    voor elke $variabele .pagina.php erachter plakken zodat elke andere opvraging niet toegangelijk is
    GlowMousezondag 21 juni 2009 @ 12:31
    quote:
    Op zondag 21 juni 2009 12:30 schreef cablegunmaster het volgende:

    [..]

    ah nee de beveiliging is htacces ingesteld dat je bepaalde mappen geen toegang hebt. via get maar wel via a href kan weergeven dus kun je niet extern op de pagina komen.
    Dat moet wel een heel goede beveiliging zijn! Ik zou me toch eens inlezen.
    quote:
    Op zondag 21 juni 2009 12:30 schreef cablegunmaster het volgende:

    [..]

    voor elke $variabele .pagina.php erachter plakken zodat elke andere opvraging niet toegangelijk is
    Dat is schijnveiligheid, met een NUL-byte (chr(0)) te omzeilen.
    cablegunmasterzondag 21 juni 2009 @ 12:33
    quote:
    Op zondag 21 juni 2009 12:31 schreef GlowMouse het volgende:

    [..]

    Dat moet wel een heel goede beveiliging zijn! Ik zou me toch eens inlezen.
    ik krijg volgend jaar nog een hoofdstuk beveiliging maar wat bedoel je? ik weet dat je via htacces de post en get kan uitschakelen voor een bepaalde map
    GlowMousezondag 21 juni 2009 @ 12:34
    quote:
    Op zondag 21 juni 2009 12:33 schreef cablegunmaster het volgende:

    [..]

    ik krijg volgend jaar nog een hoofdstuk beveiliging maar wat bedoel je? ik weet dat je via htacces de post en get kan uitschakelen voor een bepaalde map
    Wat ik bedoel is dat je met "a href" een normale GET krijgt, dus als dat werkt dan heb je gewoon geen beveiliging tegen GET.
    En zie edit vorige post.
    cablegunmasterzondag 21 juni 2009 @ 12:36
    vertel, hoe zou je dit kunnen oplossen ? want ik heb al heel wat stukjes gelezen over mogelijke aanvallen op websites beginnend met sql escape eindigend met bruteforce md5.
    GlowMousezondag 21 juni 2009 @ 12:38
    quote:
    Op zondag 21 juni 2009 12:36 schreef cablegunmaster het volgende:
    vertel, hoe zou je dit kunnen oplossen ? want ik heb al heel wat stukjes gelezen over mogelijke aanvallen op websites beginnend met sql escape eindigend met bruteforce md5.
    Zelf een whitelist bijhouden met pagina's die de user op mag vragen. Of het idee laten varen om alles via één index.php te doen en voor elke pagina een aparte file gebruiken.
    HenryHillzondag 21 juni 2009 @ 12:46
    quote:
    Op zondag 21 juni 2009 12:24 schreef Likkende_Lassie het volgende:

    [..]

    Nougoed, als iemand enig idee heeft hoe de som in elkaar zit, graag!
    Ik heb geen idee wat dit op postcode.nl doet, maardeze pagina bevat een berekening die wellicht doet wat je wilt...

    Oh, en check ook de pagina waar hij naar verwijst: http://www.movable-type.co.uk/scripts/gis-faq-5.1.html
    cablegunmasterzondag 21 juni 2009 @ 12:58
    quote:
    Op zondag 21 juni 2009 12:38 schreef GlowMouse het volgende:

    [..]

    Zelf een whitelist bijhouden met pagina's die de user op mag vragen. Of het idee laten varen om alles via één index.php te doen en voor elke pagina een aparte file gebruiken.
    ja opzich heb je wel gelijk. 1 pagina is niet overzichtelijk.

    ik denk teveel dat alles op de index pagina moet staan maar dat is te gelimiteerd aan opties.
    kan beter alles in de header en footer schrijven en die elke keer includen


    ik krijg steeds in mn hoofd dat alles op de index moet staan.
    Lightzondag 21 juni 2009 @ 13:05
    quote:
    Op zondag 21 juni 2009 12:24 schreef Likkende_Lassie het volgende:

    [..]

    Nougoed, als iemand enig idee heeft hoe de som in elkaar zit, graag! :)
    Volgens mij ontbreekt pi in je formule. De omtrek van een cirkel is 2 * pi * r en dat vind ik niet terug in je formule. Ook is de straal van de aarde niet constant.

    Verder kun je natuurlijk zelf aan het rekenen gaan. Bereken eens de afstand tussen de volgende punten:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Punt 1      Punt 2
    (Lat, Lng)  (Lat, Lng)
    (  0,   0)  ( 15,   0)
    (  0,  60)  ( 15,  60)
    (  0, 120)  ( 15, 120)
    (  0, 180)  ( 15, 180)

    (  0,   0)  (  0,  15)
    ( 30,   0)  ( 30,  15)
    ( 60,   0)  ( 60,  15)
    ( 90,   0)  ( 90,  15)
    Likkende_Lassiezondag 21 juni 2009 @ 13:12
    quote:
    Op zondag 21 juni 2009 13:05 schreef Light het volgende:

    [..]

    Volgens mij ontbreekt pi in je formule. De omtrek van een cirkel is 2 * pi * r en dat vind ik niet terug in je formule. Ook is de straal van de aarde niet constant.

    Verder kun je natuurlijk zelf aan het rekenen gaan. Bereken eens de afstand tussen de volgende punten:
    [ code verwijderd ]


    Hier heb ik wel iets waar PI in voorkomt:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    $r 
    6378.8//de radius / straal van de aarde in kilometers
    $fltDistance = (  
                   
    $r 3.1415926 *  
                     
    sqrt
                       ( 
    $fltLat2 $fltLat1 ) *  
                       ( 
    $fltLat2 $fltLat1 ) +  
                       
    cos $fltLat2 57.29578 ) *  
                       
    cos $fltLat1 57.29578 ) *  
                       ( 
    $fltLon2 $fltLon1 ) *  
                       ( 
    $fltLon2 $fltLon1 
                     ) / 
                   
    180
                 
    ); 
    ?>



    EDIT:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    ' THIS VARIABLE SETS THE RADIUS IN MILES
    iRadius = 150

    istartlat=Session("lat"
    istartlong=Session("long"

    LatRange = iradius / ((6076 / 5280) * 60)
    LongRange = iRadius / (((cos(cdbl(iStartLat * _
    3.141592653589 / 180)) * 6076.) / 5280.) * 60)

    LowLatitude = istartlat - LatRange
    HighLatitude = istartlat + LatRange
    LowLongitude = istartlong - LongRange
    HighLongitude = istartlong + LongRange
    SELECT *
    FROM Locations
    WHERE Latitude <= [HighLatitude]
    AND Latitude >= [LowLatitude]
    AND Longitude >= [LowLongitude]
    AND Longitude <= [HighLongitude]


    Zojuist bovenstaande gevonden, even mee stoeien, wie weet kom ik er zo uit!

    [ Bericht 14% gewijzigd door Likkende_Lassie op 21-06-2009 13:18:47 ]
    Likkende_Lassiezondag 21 juni 2009 @ 14:00
    Om even terug te komen op bovenstaande:

    Ik had het voorbeeld van http://www.dmxzone.com/forum/topic.asp?topic_id=14260.
    Omgezet naar php:

    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
    <?php
    $from
    ['Lat'] = 51.5007359;
    $from['Lng'] = 3.6112547;
       
    $iRadius 100;

    $istartlat $from['Lat'];
    $istartlong $from['Long'];

    $LatRange = ($iRadius / ((6076 5280) * 60));

    $floatthis = ($iStartLat 3.141592653589 180);
    $LongRange = ($iRadius / (((cos(settype($floatthis"float")) * 6076.) / 5280.) * 60));

    $LowLatitude = ($istartlat $LatRange);
    $HighLatitude = ($istartlat $LatRange);
    $LowLongitude = ($istartlong $LongRange);
    $HighLongitude = ($istartlong $LongRange);

    echo 
    "
    SELECT * FROM cor WHERE 
    cor.Lat <= $HighLatitude AND 
    cor.Lat >= $LowLatitude AND 
    cor.Lng >= $LowLongitude AND 
    cor.Lng <= $HighLongitude 
    "
    ;
    ?>


    Maar hier geeft hij geen resultaten weer. Zodra ik de $iRadius hoger dan 130 zet wel, maar dat klopt natuurlijk niet. Wel liggen alle punten redelijk in de buurt.