Juicyhil | woensdag 19 juni 2013 @ 00:27 | |||||
![]() 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 ![]() 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 Succes heren met het volgende deeltje! | ||||||
Light | woensdag 19 juni 2013 @ 06:28 | |||||
Ik heb nooit met Visual Studio gewerkt, maar de auto-complete van PhpStorm vind ik zeer goed. | ||||||
KomtTijd... | woensdag 19 juni 2013 @ 09:31 | |||||
ik vind de autocomplete van geany erg relaxed. Komt misschien doordat ik die als enige gewend ben maar ik gebruik het best veel. Vult ook class- variable- en functienamen aan die je in andere openstaande bestanden in gebruik hebt. Das wel handig, behalve dat je libraries e.d. natuurlijk (bijna) nooit open hebt staan. | ||||||
Chandler | woensdag 19 juni 2013 @ 23:24 | |||||
Ik heb een groot nadeel ontdekt van InnoDB, dat als je een veld toevoegd op een tabel met 5 miljoen records, dat deze er dan zeker 3 uur over doet (en nog steeds bezig is...).... | ||||||
pascal08 | woensdag 19 juni 2013 @ 23:52 | |||||
![]() Heb je wel gepartitioneerd? | ||||||
Boze_Appel | woensdag 19 juni 2013 @ 23:56 | |||||
Dan heb je inderdaad ergens iets gruwelijk fout gedaan of je draait die DB op een pentium 1 ofzo. | ||||||
Chandler | donderdag 20 juni 2013 @ 00:12 | |||||
Dan doen ik en mensen uit 125.000 resultaten op google dus blijkbaar iets fout ![]() https://www.google.nl/sea(...)ceid=chrome&ie=UTF-8 -edit 2- http://stackoverflow.com/(...)lter-table-of-innodb Is niet precies mijn verandering maar geeft wel aan dat het tijd kost... nogal wat... maar met mogelijke (snellere) oplossingen.. -edit 1- Oh en er is natuurlijk een workaround. Kopieer table structuur, maak nieuw 'tijdelijk' tabel aan, pas structuur aan, exporteer data oude tabel, importeer data nieuwe tabel... scheelt aanzienlijk in de tijd... [ Bericht 17% gewijzigd door Chandler op 20-06-2013 00:36:46 ] | ||||||
rekenwonder | donderdag 20 juni 2013 @ 14:54 | |||||
Scheelt dat echt aanzienlijk? Ik dacht namelijk dat InnoDB onder water hetzelfde deed en dat daarmee ook de traagheid te verklaren was. | ||||||
Chandler | donderdag 20 juni 2013 @ 22:34 | |||||
Aanzienlijk weet ik eigenlijk niet, heb de querys vannacht gedaan (lokaal) en ben gaan slapen... en het fijne van phpmyadmin is dat deze geen TIJD MEE GEEFT (duur van query, begin tijd, eind tijd en dat soort informatie...) De export was zo gepiept, minuutje of 10. Het invoeren van de data heeft zeker een halfuur geduurd maar zou ook 2 uur kunnen zijn ![]() | ||||||
Chandler | vrijdag 21 juni 2013 @ 21:06 | |||||
Weer wat anders met curl, Ik krijg vaak een CURLE_OK terug van curl_errno, maar soms als ik met curl_getinfo de http code uitlees is deze geen 200 maar 0; dus kan ik er op dit moment niets mee. Als ik kijk wat curl_error uitspuwt zie ik veelal van dit soort berichten (zonder tijd natuurlijk) 2013-06-21 20:58:23 - Could not resolve host: (nil); Host not found 2013-06-21 20:58:41 - Connection timed out after 2013 milliseconds 2013-06-21 20:59:04 - Resolving timed out after 2012 milliseconds 2013-06-21 20:59:33 - Operation timed out after 2013 milliseconds with 0 out of -1 bytes received Op zich niets mis mee hoor, met deze gegevens kan ik ook wat, alleen vraag ik mij af of er ergens meer over dit soort foutmeldingen te vinden is, ik zou graag direct mijn script willen aanpassen op 'alle' mogelijkheden die kunnen voorkomen. Iemand een idee? [ Bericht 0% gewijzigd door Chandler op 21-06-2013 21:11:32 ] | ||||||
slacker_nl | vrijdag 21 juni 2013 @ 22:07 | |||||
Poept CURL geen meuk uit als je timeout verlopen is..? Maar je MOET kijken naar de HTTP code, anders weet je neit hoe/wat/waar. Dus als deze 0 is weet je dat er iets fout is. Je kan eventueel ook eerst dit proberen op de hostname: http://php.net/manual/en/function.gethostbyname.php http://www.php.net/manual/en/function.checkdnsrr.php (type A, AAAA, CNAME moeten bestaan, iig 1 vd 3). [ Bericht 8% gewijzigd door slacker_nl op 21-06-2013 22:14:18 ] | ||||||
Chandler | vrijdag 21 juni 2013 @ 22:24 | |||||
Daardoor moet ik er inderdaad dus naar kijken, want een 200 is gewoon OK! zeker als de lengte van de content langer is dan 0. Ik ben hier bekend mee, is op zich niet nodig, de foutmeldingen die CURL geeft geven dit ook al aan, alleen vraag ik mij af of er niet een lijst beschikbaar is waarin ik kan zien welke mogelijke fouten er allemaal tevoorschijn kunnen komen? Voor alle gegeven fouten zet ik in de database dat de url fout en dus niet meer bezocht hoeft te worden (maar bij een timeout waarbij wel data ontvangen is, wil ik dat het liefst voorkomen! want die mag van mij wel meerdere kansen krijgen, eventueel op andere tijdstippen, (misschien is de site ff druk!?)) | ||||||
wipes66 | zaterdag 22 juni 2013 @ 00:18 | |||||
php 5.5 is trouwens al weer uit: http://php.net/ChangeLog-5.php#5.5.0 * Added Zend Opcache extension and enable building it by default. schijnt ook iets sneller te zijn dan apc, alleen er zit geen user cache bij ![]() | ||||||
Light | zondag 23 juni 2013 @ 00:39 | |||||
Alle 2xx return codes geven succes aan (in een of andere vorm). | ||||||
Chandler | zondag 23 juni 2013 @ 02:57 | |||||
Klopt alleen de 200 met content ![]() ![]() | ||||||
Chandler | maandag 24 juni 2013 @ 00:19 | |||||
nvm. [ Bericht 99% gewijzigd door Chandler op 24-06-2013 00:25:29 ] | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 11:50 | |||||
Huh... Doet PHP strings met variables erin cachen ofzo? heb meerdere strings in de vorm van "{$rootdir}/path/to/file.php", nu heb ik $rootdir veranderd maar een hoop bestanden zoeken desondanks nog steeds in de oude rootdir... | ||||||
zoem | dinsdag 25 juni 2013 @ 11:54 | |||||
Nar mijn weten niet. Heb je wat code om te laten zien? | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 11:57 | |||||
of anders dirname(__FILE__) ?
[ Bericht 0% gewijzigd door KomtTijd... op 25-06-2013 12:08:58 ] | ||||||
Rockfire | dinsdag 25 juni 2013 @ 12:04 | |||||
je hebt door dat er geen $ staat voor thisdir? | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 12:09 | |||||
zo beter? tevens in libraries:
[ Bericht 98% gewijzigd door KomtTijd... op 25-06-2013 12:20:20 ] | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 12:47 | |||||
Raar zeg. Ik krijg het dus echt niet voor elkaar de directory te renamen. Een kopie maken werkt wel. | ||||||
zoem | dinsdag 25 juni 2013 @ 13:21 | |||||
Ik snap wat je bedoelt, maar met de gegeven code kan ik er niet veel uit opmaken. Heb je al var_dump gedaan op de betreffende locaties? Kan het zijn dat include_path gebruikt wordt ipv de verwachte dir? | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 14:06 | |||||
ik denk dat ik beter de situatie (wat beter) kan omschrijven: 1) ik heb een map met scripts erin op een linux (ubuntu 12.04) server waarin ik ontwikkel (zeg /var/www/ 2) ik rename de map via een SFTP-verbinding zodat dit de live versie wordt (is het idee) 3) alle calls naar dirname(__FILE__) blijven de oude mapnaam teruggeven met als gevolg hele ritsen errors van includes die niet meer gevonden kunnen worden. 4) ik rename de map weer naar zijn oorspronkelijke naam, alles gaat weer goed 5) ik maak (wederom via SFTP) een kopie van de map en rename die naar de naam die ik wil hebben, vervolgens verwijder ik de oorspronkelijke map 6) alles gaat goed, de applicatie draait succesvol op zijn nieuwe locatie. ik heb een clearstatcache() geprobeerd maar dat hielp niet, misschien heeft het wel met het filesystem te maken? | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 17:28 | |||||
Even een index toevoegen over een kleine 3M records kost ook langer dan een kwartiertje... | ||||||
Chandler | dinsdag 25 juni 2013 @ 17:59 | |||||
Tja, maar volgens mij is een index apart, maar een veld toevoegen of wijzigen duurt helaas VEEL LANGER! ![]() | ||||||
slacker_nl | dinsdag 25 juni 2013 @ 18:25 | |||||
Heel simpel, maar zo effectief: Symlink: /var/www/ditisdelivecode Je hebt je dir: /var/www/versie1.2 /var/www/versie1.3 Je doet: rm /var/www/ditisdelivecode ln -s /var/www/versie1.3 /var/www/ditisdelivecode Tada, fixed. Terug gaan? rm /var/www/ditisdelivecode ln -s /var/www/versie1.2 /var/www/ditisdelivecode En eigenlijk moet je gewoon het oude weggooien, je hebt toch alles in version control staan. | ||||||
KomtTijd... | dinsdag 25 juni 2013 @ 18:42 | |||||
Versiebeheer, ja dat moeten we nog altijd eens implementeren. 't is een offline omgeving, dat maakt het niet makkelijker. Maar er worden wel dagelijks (off-site) backups gemaakt dus oude zooi flikker ik inderdaad gewoon weg. Een symlink maken is ook wel een goed idee. Niet aan gedacht ![]() | ||||||
Swetsenegger | woensdag 26 juni 2013 @ 11:18 | |||||
Mogguh, Ik heb een klein SQL vraagje. Waarschijnlijk heel simpel op te lossen maar ik kan het niet verzinnen. stel ik heb de volgende tabel
Nu wil ik alle rijen selecteren waar idA danwel B een 3 bevat, maar dan wil ik alleen de value terug die géén 3 is, in dit voorbeeld krijg ik dus 15 en 136 terug. Hoe doe ik dat? | ||||||
mstx | woensdag 26 juni 2013 @ 11:22 | |||||
| ||||||
Swetsenegger | woensdag 26 juni 2013 @ 11:26 | |||||
![]() | ||||||
mstx | woensdag 26 juni 2013 @ 11:30 | |||||
Ik heb zelf ook een vraagje, deze (simpele) query is soms traag:
De explain zegt dit:
| ||||||
zoem | woensdag 26 juni 2013 @ 11:59 | |||||
Ja, een aparte counter bijhouden ipv COUNT(*) uitvoeren ![]() | ||||||
Pakspul | woensdag 26 juni 2013 @ 12:58 | |||||
dit performance technisch gezien de beste oplossing t.o.v. count queries. Je moet wel in de applicatie goed testen dat de tel kolom goed bij blijft, anders geef je valse waardes weer. | ||||||
mstx | woensdag 26 juni 2013 @ 13:11 | |||||
Zou kunnen, het gaat om het tellen van bijvoorbeeld het aantal berichten in een forum topic, waarvan het topic niet verwijderd is en het bericht ook aan een voorwaarde moet voldoen. Dan zou ik inderdaad het aantal berichten per topic kunnen bijhouden, maar als je dan bijvoorbeeld het aantal berichten per user of het aantal berichten in een bepaald subforum wil tellen moet je alsnog een count + join doen, of dat ook allemaal apart weer bijhouden en bij het plaatsen/verwijderen van een bericht al die tellers weer updaten, lijkt me een beetje omslachtig. ![]() | ||||||
KomtTijd... | woensdag 26 juni 2013 @ 13:16 | |||||
Is die query zo'n performance hit dan? Volgens mij moet die vrij snel kunnen met de juiste indexes, toch? | ||||||
mstx | woensdag 26 juni 2013 @ 13:22 | |||||
Hij komt wel redelijk vaak voor in m'n slow query log. ![]()
Het zal wel fout gaan bij "Rows_examined: 401908" maar geen idee hoe ik dat precies kan verbeteren. | ||||||
KomtTijd... | woensdag 26 juni 2013 @ 13:58 | |||||
heb je ook een index op comments.topic_id? | ||||||
mstx | woensdag 26 juni 2013 @ 14:39 | |||||
Yes. | ||||||
papernote | woensdag 26 juni 2013 @ 19:05 | |||||
Laat eens een EXPLAIN zien. -edit: laat maar, die staat er boven ![]() Is het datatype van isActive een bool? Misschien kun je nog een USE INDEX toevoegen, omdat hij bij de eerste SELECT kiest voor kolomY en niet voor PRIMARY? [ Bericht 45% gewijzigd door papernote op 26-06-2013 19:10:56 ] | ||||||
Chandler | woensdag 26 juni 2013 @ 20:29 | |||||
Ik loop tegen iets in CURL aan, voor vele URLS krijg ik een goede status terug van CURL maar sommige een foutmelding, deze foutmelding is vaak Could not resolve host: (nil); Host not found terwijl als ik met de browser naar deze url ga, bestaat deze wel!? en laad erg snel. Mijn scriptje draait 25 URLS tegelijk met een timeout van 10 seconden.. Dus nu vraag ik mij af?! waar ligt dit aan? mijn opts zijn als volgt;
Heeft iemand een idee waar de fout zou kunnen zitten? of is er bekend mee en weet er een work around/oplossing voor? | ||||||
papernote | woensdag 26 juni 2013 @ 20:55 | |||||
Waarom staat je CURLOPT_DNS_CACHE_TIMEOUT zo kort? En draait je script op dezelfde computer als je browser? Zoeken ze de host op via dezelfde DNS server? | ||||||
Chandler | woensdag 26 juni 2013 @ 21:16 | |||||
Ik draai alles op het zelfde systeem (mijn test omgeving laptop) en heb nergens een DNS adres ingesteld whatsoever... De timeout staat zo kort omdat deze dan toch al wel gevonden moet zijn? lijkt mij? ![]() | ||||||
papernote | woensdag 26 juni 2013 @ 21:56 | |||||
Het is de duur waarmee items in de DNS cache van cURL worden bewaard. Jij kiepert nu elke twee seconden je DNS cache leeg, waardoor je URLs heel vaak moet resolven. Als je vaak dezelfde host benaderd, dan is het wel handig om je cache langer gevult te laten. Het is dus géén timeout die bepaalt hoe lang cURL staat te wachten op een request. | ||||||
Chandler | woensdag 26 juni 2013 @ 22:00 | |||||
Het voorbeeld is dat ook niet helemaal juist, want zowel met deze opties als zonder (of op welke waarde dan ook) blijven de fouten zich voordoen. Ik had deze DNS opties als test toegevoegd, maar zonder resultaat.... Dus snap ik nog steeds niet (lijkt mij dus dat DNS van de brouwser het zelfde is als die php gebruikt) waarom hij ze niet pakt? beetje vervelend... | ||||||
papernote | woensdag 26 juni 2013 @ 22:04 | |||||
Doe de URLs eens stuk-voor-stuk en kijk bij welke hij vastloopt. | ||||||
zoem | woensdag 26 juni 2013 @ 22:23 | |||||
Alleen de curl opts zegt niet zo heel veel; het kan ook op een ander punt fout gaan (wat ik vermoed). Wat voer je verder nog uit met curl? | ||||||
slacker_nl | woensdag 26 juni 2013 @ 23:54 | |||||
Je wilt die DNS CACHE behouden, je zou eventueel als je echt lowlevel wilt gaan doen eerst resolven en dan pas aan CURL geven. http://www.php.net/manual/en/function.dns-get-record.php En dan wil je op A, CNAME en AAAA records zoeken en CNAME's moet je weer doorresolven tot je uitkomt op een A/AAAA record. Of deze: http://www.php.net/manual/en/function.checkdnsrr.php | ||||||
Boze_Appel | donderdag 27 juni 2013 @ 00:47 | |||||
Indexes erbij maken op type en isactive. Daar doe je de selecties op. | ||||||
Chandler | donderdag 27 juni 2013 @ 07:00 | |||||
Ik voer verder niets specifieks uit met curl, ik gebruik dezelfde opzet als die eerder door Slacker_nl is gegeven (DIG / [PHP/(My)SQL] voor dummies #109) En het uitlezen van de DNS per URL zou een mogelijkheid zijn, al zou CURL deze url natuurlijk ook gewoon moeten kunnen vinden ![]() | ||||||
Light | donderdag 27 juni 2013 @ 07:16 | |||||
Ik zou hier in Inner Join gebruiken ipv een Left Join. Je zoekt expliciet naar rijen waar TabelB.KolomY een waarde heeft, dus voegt het gebruik van een left join niets toe. | ||||||
mstx | donderdag 27 juni 2013 @ 08:04 | |||||
Die indexes zitten er al op. Maar dan selecteert 'ie toch ook rijen uit tabel B die niet gekoppeld zijn aan een rij uit tabel A? Nog wat dingen geprobeerd maar het probleem zit hem echt in de COUNT() i.c.m. JOIN.
Ik denk dat ik maar gewoon de kolom van TabelB die ik in de WHERE gebruik kopieer naar TabelA zodat ik niet hoef te joinen. | ||||||
Light | donderdag 27 juni 2013 @ 08:09 | |||||
Nee. Bij een left join selecteer je alle rijen uit A en als er geen match in B gevonden kan worden (op basis van de ON clause) dan worden alle velden van B voor die rij gevuld met NULL. Bij een inner join selecteer je alleen die rijen uit A waarvoor een match in B gevonden kan worden (op basis van de ON clause). | ||||||
mstx | donderdag 27 juni 2013 @ 08:22 | |||||
Ho ik zat even niet op te letten, je hebt gelijk. ![]() | ||||||
slacker_nl | donderdag 27 juni 2013 @ 08:31 | |||||
Mijn code is altijd bugfree ![]() | ||||||
Cue_ | donderdag 27 juni 2013 @ 08:33 | |||||
Mensen hier ervaring/voorbeelden van een soap call naar een webservice met PL/SQL? | ||||||
Chandler | donderdag 27 juni 2013 @ 10:13 | |||||
juist haha maar goed, blijkbaar doe ik iets verkeerd!? ik ga nu eens kijken hoe anderen het doen... | ||||||
mstx | donderdag 27 juni 2013 @ 13:39 | |||||
Ik kwam net weer eens een prachtige query tegen van een oud-collega:
![]() | ||||||
Chandler | donderdag 27 juni 2013 @ 13:41 | |||||
Prachtig! zo leer je sub selects ![]() | ||||||
Crutch | donderdag 27 juni 2013 @ 16:00 | |||||
Hallo! Wat vinden jullie van Symfony? | ||||||
raptorix | donderdag 27 juni 2013 @ 17:45 | |||||
Als het nou op een ander veld was het helemaal niet zo gek geweest, voorbeeld is een werknemerstabel waarbij er een veld leidinggevende is welke correspondeerd met het werknemerId. | ||||||
Pakspul | zondag 30 juni 2013 @ 15:29 | |||||
Ik wil temperatuur in een Mysql database opslaan, maar zit even te twijfelen wat ik het beste kan gebruiken. Float, Double, Decimal of Real? Mijn eerste keuze zou een float zijn, maar ik weet dat als je geld opslaat in een DB dat je Decimal moet gebruiken, aangezien temperatuur aardig op geld lijkt (ook twee cijfers achter de komma [in ieder geval hoe ik het aangeleverd krijg]). Zou ik zeggen Decimal is een veilig keuze, maar ik ga niet rekenen met deze cijfers, dus Float zou volgens mij ook wel kunnen. Kan iemand de beste keuze kunnen uitleggen en wat standaarden hiervoor zijn? | ||||||
Boze_Appel | zondag 30 juni 2013 @ 15:42 | |||||
Als je er niet mee gaat rekenen, waarom sla je ze dan op? Anyway, gewoon een decimal (4,1) gebruiken. Tenzij je dik dure apparatuur hebt is temperatuur opslaan met twee decimalen vrij onzinnig. | ||||||
Pakspul | zondag 30 juni 2013 @ 17:04 | |||||
Niet mee rekenen in de zin van ik ga geen percentages er over heen gooien om daarna totalen te gaan berekenen. Meer datamining, zodat ik later kan kijken of ik ze kan gebruiken om beslissingen op te maken. Arduino zit er achter, vet dure apparatuur dus ![]() | ||||||
Light | zondag 30 juni 2013 @ 23:33 | |||||
Als je twee decimalen aangeleverd krijgt, waarom zou je er dan maar 1 opslaan? | ||||||
Boze_Appel | zondag 30 juni 2013 @ 23:38 | |||||
Kan opzich natuurlijk wel, maar het is een beetje als een rondje hardlopen op de cm nauwkeurig opslaan. Het gaat om gemeten temperatuur door een apparaat van nog geen tientje. Ik denk dat je al blij moet zijn als dat ding hele graden nauwkeurig doet, laat staan honderdste graden. Ik ben van mening dat je data op basis van relevantie en toepasbaarheid op moet slaan en niet data moet bewaren 'omdat het kan'. | ||||||
KomtTijd... | zondag 30 juni 2013 @ 23:38 | |||||
Gebruik gewoon een int en sla de temp. in honderdste graden celcius op. | ||||||
Light | maandag 1 juli 2013 @ 00:09 | |||||
Dat ligt er m.i. ook aan wat je meet. Kamertemperatuur in honderdste graden is niet echt zinnig maar bij een experiment kan die nauwkeurigheid wel nuttig zijn. | ||||||
Boze_Appel | maandag 1 juli 2013 @ 00:25 | |||||
Eens, maar als er al aangegeven wordt er niet mee te willen rekenen kan je 'experiment' meteen wel uitsluiten. ![]() | ||||||
randomo | maandag 1 juli 2013 @ 01:48 | |||||
tvp, ben bezig met een site voor mn pa, dus ik ga jullie waarschijnlijk nog wel lastig vallen ![]() | ||||||
Chandler | woensdag 3 juli 2013 @ 10:33 | |||||
God wat is het toch vervelend om regexjes op grote bestanden af te sturen ![]() ![]() Heb een 2MB bestand en wilde deze eerst in 1x door preg_match_all halen, nou daar had PHP niet echt zin in en koste ruim een UUR!! lol, nu heb ik een benchmark gedaan om het bestand in stukken te verdelen en dat komt de snelheid ten goede.. stukken van 25000 (etc) + 500 extra (straks mis ik nog wat) 25500 bytes per keer - 709 seconden 10500 bytes per keer - 239 seconden 5500 bytes per keer - 130 seconden 3000 bytes per keer - 54 seconden 1500 bytes per keer - 22 seconden ![]() ![]() | ||||||
Juicyhil | woensdag 3 juli 2013 @ 10:37 | |||||
Lees je hem tegelijkertijd van de harde schijf af? Dat gaat namelijk altijd langzaam. Eerst in het geheugen stoppen en daarna pas checken met regex. | ||||||
Chandler | woensdag 3 juli 2013 @ 10:39 | |||||
het hele document zit in het geheugen! ![]() Sterker nog, het document wordt geladen in het geheugen vanaf een andere server (curl) en daarna pas door een foreach loopje bewerkt.
[ Bericht 41% gewijzigd door Chandler op 03-07-2013 10:46:37 ] | ||||||
Sitethief | woensdag 3 juli 2013 @ 11:34 | |||||
Some people, when confronted with a problem, think “I know, I'll use regular expressions.” Now they have two problems. | ||||||
slacker_nl | woensdag 3 juli 2013 @ 11:37 | |||||
Gewoon telkens een x-aantal blokken lezen, dan parsen, dan weer verder lezen, dan parsen, etc etc. http://php.net/manual/en/function.fread.php Welk even flocken, anders gaan er andere processen naar willen schrijven en gaat het (mogelijk) fout. | ||||||
Chandler | woensdag 3 juli 2013 @ 11:41 | |||||
Dat doe ik dus nu, plus ik voeg 500 bytes extra toe om niets te missen... ![]() | ||||||
zoem | woensdag 3 juli 2013 @ 11:50 | |||||
Ja en nee. Dat hangt compleet van de gebruikte regex af. Een inefficiente regex kan (onnodig) lang duren, zeker als het om veel karakters gaat (oa ivm backtracking). Wat voor regex pattern gebruik je? | ||||||
Chandler | woensdag 3 juli 2013 @ 12:00 | |||||
"/[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}/i" Om emails te parsen! ![]() | ||||||
zoem | woensdag 3 juli 2013 @ 12:15 | |||||
Aha, de bekende email-regex ![]() Ik zie een aantal nested quantifiers, wellicht is dit interessant leesvoer: Catastrophic backtracking. Ik heb nu helaas niet de tijd om deze regex te optimaliseren, maar misschien wel een tip: probeer niet alles in een regex te vrotten. Je kunt ook ruwweg alle strings lijkende op emailadressen eruit halen en daarna de $matches array loopen voor een nadere validatiestap. Dus trek de filterstap en validatiestap wat uit elkaar. | ||||||
slacker_nl | woensdag 3 juli 2013 @ 13:02 | |||||
Alles achter de @ kan je hiertegen aangooien:
Je mag het zelf verphp'en. Dan kan je vervolgens alles voor de @ ook nog eens goed parsen en dan ben je klaar. | ||||||
zoem | woensdag 3 juli 2013 @ 13:54 | |||||
En voor je het weet heb je zoiets: http://www.perlmonks.org/?node_id=393809 ![]() Ik zou het lekker simpel houden. Als het even kan zou ik filter_var() (php >= 5.2.0) erbij betrekken voor de validatie. | ||||||
wipes66 | woensdag 3 juli 2013 @ 15:12 | |||||
![]() filter_var gebruikt trouwens intern ook een enorme regex ![]() | ||||||
Sitethief | maandag 8 juli 2013 @ 09:23 | |||||
Ik wil deze functie gebruiken om dynamisch bepaalde waardes in een array met objecten te vergelijken. Het probleem is dat ik meerdere type data wil kunnen vergelijken die op meerdere plekken in het object zitten. Weet iemand of het mogelijk is om, met bijvoorbeeld eval, deze op een makkelijke manier dynamisch aan te maken? Anders moet ik die foreach in iedere case stoppen en dat vind ik toch niet een goede, beheersbare oplossing. Maar eval zelf is ook niet zo heel erg tof. Wat ik tot nu toe kon vinden is dit alleen maar mogelijk bij statisch properties. | ||||||
Chandler | donderdag 11 juli 2013 @ 23:42 | |||||
Ik heb een query die raar doet wanneer ik gebruik wil maken van ORDER BY. Zonder order by is deze query 0.0043 seconden, met ORDER BY `failed` kost deze query ruim 23 seconden!?
Als ik een URL laad wil ik het liefst URLS laden die ik nog niet heb gehad (processed = 0) maar liefst ook de URLS die nog niet gelezen en mislukt zijn. Met huidige query lees ik deze 3x achter elkaar alvorens processed op 1 te zetten, alleen nu wilde ik met ORDER BY 'failed' ASC de URLS met een waarde die groter is dan 0 achter aan zetten en de URLS met waarde van 0 natuurlijk vooraan... oftewel eerst uitlezen. Tabel
Iemand een idee? oh ik heb maar 17m regeltjes.... | ||||||
zoem | donderdag 11 juli 2013 @ 23:46 | |||||
Wat zegt EXPLAIN? | ||||||
Purplesparks | donderdag 11 juli 2013 @ 23:49 | |||||
Natuurlijk niet het antwoord wat je zoekt. Maar je kan het via een omweg ook gewoon orderen binnen php lijkt me. | ||||||
Juicyhil | donderdag 11 juli 2013 @ 23:51 | |||||
Dat gaat je geheugen kosten ![]() | ||||||
Purplesparks | donderdag 11 juli 2013 @ 23:52 | |||||
True dat, maar een potentiële mogelijkheid als chandler niet de oplossing weet te vinden van de lange order tijd. | ||||||
Juicyhil | donderdag 11 juli 2013 @ 23:54 | |||||
Neem anders eens failed op in je where-clause. Dan hoeft hij in wat minder rijen te sorteren. Edit: oh never mind, niet goed gelezen ![]() | ||||||
zoem | vrijdag 12 juli 2013 @ 00:02 | |||||
Valt erg mee hoor als je het een beetje slim aanpakt, aangenomen dat er gewerkt wordt met een beperkte subset van de 17M rows (processed=0). Maar goed, de query optimaliseren heeft natuurlijk de voorkeur. [ Bericht 0% gewijzigd door zoem op 12-07-2013 00:48:54 ] | ||||||
Chandler | vrijdag 12 juli 2013 @ 11:35 | |||||
Ja, en het rare is dat er geen filesort gebruikt wordt, dus het orderen gebeurd toch echt wel in het geheugen (als ik check met explain). Dacht zelf ook dat ik de indexes goed had en dat blijkt wel, maar het vervelende blijft dat ik per query met order by een kleine 1000x zolang bezig ben... Maar hebben jullie tips? oh en de beperkte set van 17m rows zijn in dit geval zo'n 0,5m rows ![]() @zoom: Zonder order by 1 SIMPLE spider ref project_id_2,project_id project_id 9 const,const 536370 Met order by 1 SIMPLE spider index project_id_2,project_id failed 1 NULL 39 Using where [ Bericht 9% gewijzigd door Chandler op 12-07-2013 11:41:09 ] | ||||||
Purplesparks | vrijdag 12 juli 2013 @ 11:38 | |||||
Gaat het ook zo traag wanneer je order by gebruikt in andere tabellen of alleen in deze? | ||||||
Chandler | vrijdag 12 juli 2013 @ 11:40 | |||||
Geen idee, rest van de tabellen zijn niet zo groot dus daar zal het allemaal wel meevallen... en daar zit het tijdsverlies in deze niet in.... | ||||||
Purplesparks | vrijdag 12 juli 2013 @ 11:43 | |||||
Okee, wilde alleen uitsluiten dat het om de 1 of andere vage reden niet aan je sql prog zelf lag. Test je het trouwens lokaal allemaal? [ Bericht 3% gewijzigd door Purplesparks op 12-07-2013 11:49:14 ] | ||||||
slacker_nl | vrijdag 12 juli 2013 @ 13:04 | |||||
Hoe test je het eigenlijk, ben je de query via php aan het doen of die je het in een sql prompt? | ||||||
Chandler | vrijdag 12 juli 2013 @ 13:11 | |||||
Zowel lokaal als online test ik dit, aangezien mijn lokale test omgeving maar uit zo'n 5m regels bestaat... maar goed, het is een laptop en de online server heeft nogal wat meer power en daar is het zelfs sloom ![]() Query test ik via phpmyadmin, domweg omdat het gemakkelijk is! ![]() | ||||||
Purplesparks | vrijdag 12 juli 2013 @ 13:55 | |||||
Mijn stiefpa had een programma voor een bedrijf ontwikkeld, bij externe resultaten van bepaalde queries opvragen duurde het soms ook wel tot een minuut lang. Terwijl als hij het daar ter plekke testte een seconde of nog minder. Weet niet exact waar het aanlag maar hij heeft het opgelost. Hij maakte trouwens gebruik van delphi pascal in combinatie met een sql variant. | ||||||
zoem | vrijdag 12 juli 2013 @ 14:00 | |||||
En wat doet een index op je WHERE clause én ORDER BY field(s)? MySQL Performance Blog: ORDER BY … LIMIT Performance Optimization MySQL Reference Manual: ORDER BY Optimization | ||||||
Chandler | zaterdag 13 juli 2013 @ 16:19 | |||||
Ik heb het doorgelezen en ga het nog eens doorlezen want ben niet echt heel veel wijzer geworden dan dat ik al was ![]() ![]() | ||||||
slacker_nl | maandag 15 juli 2013 @ 11:29 | |||||
FF crossposten: http://nedbatchelder.com/text/unipain.html | ||||||
Darkomen | donderdag 18 juli 2013 @ 19:57 | |||||
Ik probeer iedereen met een andere ip naar een maintenance pagina te sturen. Alle subdomeinen, directories en files moeten geredirect worden, behalve de directory /maintenance/, de inhoud ervan, en de file maintenance.php Een van de 2 niet redirecten lukt wel, maar beiden niet Wat doe ik fout? RewriteCond %{REMOTE_ADDR} !=123.456.789.0 RewriteCond %{REQUEST_URI} !=/maintenance.php RewriteCond %{REQUEST_URI} !^/maintenance($|/) RewriteRule .* http://www.domain.com/maintenance.php [L] | ||||||
slacker_nl | donderdag 18 juli 2013 @ 20:35 | |||||
Dat zou in 1 go moeten kunnen.
| ||||||
Darkomen | donderdag 18 juli 2013 @ 22:15 | |||||
Leverde een infinite redirect op. ![]() | ||||||
wobbel | woensdag 24 juli 2013 @ 15:42 | |||||
Iemand ervaring met PHP en Websockets? Ik gebruik nu http://www.binarytides.com/websockets-php-tutorial/ dit en dat werkt prima voor testen, maar ik wil juist op random momenten data erheen sturen Hoe kan ik naar alle users die verbinding hebben een berichtje sturen met "hoi leuk dat je een websocket verbinding hebt"? Nu is alles een reactie op een actie van de user/browser. | ||||||
Juicyhil | woensdag 24 juli 2013 @ 15:55 | |||||
Je hebt geloof ik zo'n message-event. Daarop luisteren of er een berichtje binnenkomt. Deze kun je in die daemon vervolgens sturen naar alle clients | ||||||
Juicyhil | woensdag 24 juli 2013 @ 15:56 | |||||
Oh wacht even, dat is een andere. Ik gebruikte deze: http://code.google.com/p/phpwebsocket/ | ||||||
wobbel | woensdag 24 juli 2013 @ 16:00 | |||||
Maar daar vind ik ook niks in de documentatie hoe ik dat zou moeten doen. | ||||||
Juicyhil | woensdag 24 juli 2013 @ 16:01 | |||||
http://www.flynsarmy.com/(...)hat-application-2-0/ | ||||||
wobbel | woensdag 24 juli 2013 @ 16:02 | |||||
Die had ik ook al gegoogled ![]() | ||||||
ursel | woensdag 24 juli 2013 @ 16:04 | |||||
ZeroMQ al bekeken? | ||||||
Niek56 | woensdag 7 augustus 2013 @ 17:24 | |||||
Juicyhil voor dummies!! Het woord dummies alleen al zegt genoeg. Ik was of liever gezegd ik ben zo'n dummie , op de eerste plaats door me de PHP en MySQL bijbel te laten aanpraten een boek dat je niet ff op je schoot legt op er wat mee op te zoeken als je aan het scripten bent, en op de tweede plaats door PHP & MySQL voor DUMMIES te kopen via internet, want die redacteur die dat geschreven heeft moet toch wel erg kleurendoof euh blind geweest zijn die voorbeelden die daar in staan kan men niet eens lezen zonder vergrootglas, had die idioot geen nou witte letters kunnen gebruiken. PS. ik zie nu dat de maker van deze site de zelfde problemen heeft met blauw op zwart en grijs op zwart in die inlog balk, ook als eens aan bezoekers met slechten ogen gedacht [ Bericht 13% gewijzigd door Niek56 op 07-08-2013 17:30:22 ] | ||||||
wobbel | vrijdag 9 augustus 2013 @ 09:39 | |||||
Wat is de minst smerige methode om onderstaande code om te zetten naar een array?
Deze pruttel krijg ik plain text als output ergens uit, dus dat kan ik helaas niet aanpassen. De eerste regels mogen genegeerd worden, dat kan ik zelf wel fixen. | ||||||
mstx | vrijdag 9 augustus 2013 @ 09:44 | |||||
Zoiets?
| ||||||
wobbel | vrijdag 9 augustus 2013 @ 09:46 | |||||
Exploden op een spatie wordt hem niet, aangezien alle whitespaces uit spaties bestaan (erg lastig, je krijgt dan een array met 100 dingen haha) Ik heb nu het volgende:
Alleen het eerste resultaat in de array is leeg ![]() | ||||||
wobbel | vrijdag 9 augustus 2013 @ 09:48 | |||||
ah, met array_filter lossen we dat weer op ![]() ![]() | ||||||
Arcee | vrijdag 9 augustus 2013 @ 09:48 | |||||
Dan vervang je eerst in een loopje alle dubbele spaties door een enkele zodat je uiteindelijk maar 1 spatie overhoudt. | ||||||
mstx | vrijdag 9 augustus 2013 @ 09:50 | |||||
Resultaat:
| ||||||
Tijn | vrijdag 9 augustus 2013 @ 09:50 | |||||
Je zou daarna door de array kunnen gaan en alles wat geen spatie is gebruiken toch? Anders kun je ook eerst dubbele spaties weghalen met zoiets:
Daarna kun je wel op spatie exploden. | ||||||
wobbel | vrijdag 9 augustus 2013 @ 10:00 | |||||
Ik heb het op deze manier gedaan:
Output is als volgt:
Nu wil ik alleen nog de mogelijkheid om dubbelen [3] waardes te achterhalen...ik wil netjes alles weer per regel outputten, en als er dubbele [3] regels zijn deze vet maken maken. voorbeeldje: 10.0.0.17 56086 57174 31.13.72.33 443 WAN2 10.0.0.17 56089 57177 74.125.136.189 443 WAN2 10.0.0.17 56092 57174 54.230.8.197 80 WAN2 10.0.0.17 55688 56776 108.160.163.42 80 WAN2 10.0.0.17 55722 56810 74.125.136.18 443 WAN2 Eens zoeken hoe dat moet met multidimensionale arrays [ Bericht 22% gewijzigd door wobbel op 09-08-2013 10:08:30 ] | ||||||
wobbel | vrijdag 9 augustus 2013 @ 10:47 | |||||
Gelukt met deze beunhaas oplossing
| ||||||
WyriHaximus | zondag 11 augustus 2013 @ 11:27 | |||||
Al eens naar Ratchet gekeken? http://socketo.me/ En idd ook 0MQ zoals ursel al zegt. | ||||||
fyah | dinsdag 13 augustus 2013 @ 22:49 | |||||
error handling 101 ![]() ![]() | ||||||
Skunk-m | woensdag 14 augustus 2013 @ 16:31 | |||||
Kun je artikelen en forum posts beter in bestanden zetten of in een mysql tabel wat betreft prestaties..? Want op een site waar ik zit wou iemand een nieuwe versie maken zeg maar en die ging alle artikelen en forum posts in bestandjes en mappen zetten met beperkte info in mysql en ik vroeg me af of dat wel nut ofzo had.. | ||||||
Juicyhil | woensdag 14 augustus 2013 @ 16:38 | |||||
Mijn exceptions zijn altijd iets in de zin van 'Er is iets misgegaan' ![]() | ||||||
Crutch | woensdag 14 augustus 2013 @ 18:33 | |||||
Nah, zoekt zo moeilijk | ||||||
zoem | woensdag 14 augustus 2013 @ 19:45 | |||||
Databases zijn daar júist voor bedoeld. Van enkele miljoenen records ligt een rdbms absoluut niet wakker. Databases op zichzelf zijn ook gewoon bestanden, waarbij de opslagwijze afhangt van de gekozen storage engine. Dus in feite probeert hij zijn eigen databasesysteem te ontwerpen. Leuk als hobbyprojectje ter leer ende vermaeck, maar totaal niet aan te raden. Je gaat geheid tegen problemen oplopen naarmate het complexer/drukker wordt tot op het punt dat het systeem niet meer houdbaar is ![]() Wat ik me wel voor kan stellen is dat items als afbeeldingen apart op de schijf worden geplaatst. | ||||||
Boze_Appel | woensdag 14 augustus 2013 @ 21:12 | |||||
Altijd leuk, wazige foutmeldingen of boos commentaar in code. | ||||||
Skunk-m | donderdag 15 augustus 2013 @ 01:03 | |||||
Ok, als ik dat soort rare fratsen zie denk ik altijd die zullen wel iets weten waar ik niks vanaf weet en dat zal kwa prestatie waarschijnlijk schelen ofzo... Maar het is wel beter voor prestaties om de tekst inhoud in een aparte tabel te zetten bij forum of niet..? | ||||||
zoem | donderdag 15 augustus 2013 @ 18:01 | |||||
Ja, hoe wou het je anders doen? ![]() Zie StackOverflow: How to design a database design for forums? | ||||||
Pino112 | donderdag 15 augustus 2013 @ 18:07 | |||||
![]() | ||||||
Darkomen | vrijdag 16 augustus 2013 @ 14:28 | |||||
Iemand ervaring met Php Ming Ik maak hier namelijk een flash swf mee van een set foto's, en dat werkt allemaal prima, ziet er perfect uit in de browser. Maar als je het upload naar youtube dan duurt het filmpje maar 1 seconde. Het lijkt erop dat de framerate en en aantal frames niet juist doorkomen, terwijl ik die wel zet! Als ik namelijk dmv ffmpeg probeer te converten naar bijvoorbeeld mp4 dan zie ik dat de swf geen frame en bit rate heeft. Heb het script even niet hier, maandag kan ik die wel even posten. | ||||||
Skunk-m | zaterdag 17 augustus 2013 @ 01:30 | |||||
Ik bedoel dat wat ze daar de body noemen in een aparte tabel komt.. bij kunena (een joomla forum) bijvoorbeeld hebben ze een tabel messages met de volgende velden (staan zowel topics als reacties in) id parent thread catid name userid subject time ip topic_emoticon locked hold ordering hits moved modified_by modified_time modified_reason En messages_text met messid message Neem aan dat dat sneller is voor index pagina enzo waar je de inhoud van de post niet nodig hebt..? Misschien ook wel bij het zoeken naar de posts bij het topic dat geladen word..? [ Bericht 2% gewijzigd door Skunk-m op 17-08-2013 01:38:01 ] | ||||||
KomtTijd... | zaterdag 17 augustus 2013 @ 12:06 | |||||
lijkt me weinig boeiend als je gewoon goeie indexes hebt. | ||||||
Darkomen | woensdag 21 augustus 2013 @ 11:51 | |||||
Ok Ming de deur uit, image2mpeg gebruikt, werk goed! Toch jammer dat niemand ervaring lijkt te hebben met MING... | ||||||
pascal08 | woensdag 4 september 2013 @ 20:46 | |||||
Ik heb 2 tables: 1 table met een overzicht van Id's en 1 table met info per Id. Wat is de meest efficiënte manier om alle info per Id per MasterId uit de tables te halen? Table 1:
Table 2:
Ik wil dus alle info voor elke Id per MasterId. Voor MasterId 1 wil ik graag de naam, datum en de rest van de info hebben voor de Id's 1854, 512, 4561 en 813. Dit is een voorbeeld, in m'n echte tabel heb ik duizenden MasterId's en per Id +/- 50 kolommen met info. Ik weet hoe ik dmv PHP een foreach loop kan maken en zo een aparte query voor elke Id per MasterId te laten uitvoeren, maar dat lijkt me hoogst inefficiënt. Wat zouden jullie doen? | ||||||
slacker_nl | woensdag 4 september 2013 @ 20:53 | |||||
id1, id2 en id3 zijn obfuscated namen of...? Kunnen die id's in al die kolommen terug te vinden zijn? | ||||||
pascal08 | woensdag 4 september 2013 @ 20:58 | |||||
Uhmm... die Id's in table 1 zijn terug te vinden in de Id-kolom in table 2, ja... (als je dat bedoelt). Een Id in table 1 kan ook leeg zijn. In de echte tabel zijn er 18 (of minder) Id's per MasterId. Er zijn dus 18 kolommen voor de Id's waarvan sommige NULL kunnen bevatten.
[ Bericht 8% gewijzigd door pascal08 op 04-09-2013 21:03:51 ] | ||||||
mstx | woensdag 4 september 2013 @ 21:08 | |||||
Welke aap heeft dat bedacht? * mstx mompelt iets over een koppeltabel | ||||||
pascal08 | woensdag 4 september 2013 @ 21:09 | |||||
Geef eens een voorbeeldje. ![]() ![]() | ||||||
mstx | woensdag 4 september 2013 @ 21:11 | |||||
Extra tabel met 2 kolommen: squad_id | player_id Voor elke player die aan een squad gekoppeld is 1 rij. | ||||||
pascal08 | woensdag 4 september 2013 @ 21:14 | |||||
Ik snap 'm. Dat is dus efficiënter dan dit volgens jou? Ik kan me in ieder geval voorstellen dat de queries een stuk makkelijker worden. ![]() | ||||||
mstx | woensdag 4 september 2013 @ 21:18 | |||||
Ja, want: - Oneindig aantal players zonder de tabel aan te hoeven passen - Geen onnodig lege kolommen - Makkelijk kunnen aangeven dat een relatie uniek moet zijn - Met 1 simpele query alle players van een squad kunnen ophalen Leesvoer: http://nl.wikipedia.org/wiki/Databasenormalisatie http://www.tekstenuitleg.(...)en/veel-op-veel.html | ||||||
slacker_nl | woensdag 4 september 2013 @ 21:36 | |||||
OMG... ja, nou, het kan allemaal, maar het is kut met peren zoals het nu is. Back to the drawing board. Anders was het gewoon een simpele join, nu is het <moederneukend> dramatisch. | ||||||
Skunk-m | woensdag 4 september 2013 @ 22:15 | |||||
Ik heb zelf een shoutbox geschreven.. die werkt volledig los van phpbb (op stukje wat nodig om de gebruikersnaam te checken na) gewoon goed.. maar die moet verwerkt worden op een plek in phpbb maar ik heb geen flauw idee hoe dat allemaal in elkaar zit het bestand in het template waar ik em moet hebben is een html bestand.. Weet iemand hoe ik iets daartussen krijg? | ||||||
pascal08 | woensdag 4 september 2013 @ 22:47 | |||||
Bedankt, dit is echt een nuttige post. Ik google zelf heel graag, maar soms is het lastig om de juiste info te vinden als je niet weet waarvoor je moet zoeken. Thanks dus. ![]() ![]() | ||||||
Skunk-m | donderdag 5 september 2013 @ 15:28 | |||||
Weet niet of dit de juist plek is om het te vragen (waarschijnlijk niet, maar toch) maar hoe kun je in phpbb voor elkaar krijgen dat de topics uit subcategorien door elkaar weergegeven worden in de hoofdcategorie.. dus eigenlijk hetzelfde als dat je hier in digital corner alle topics uit hardware, software etc. door elkaar hebt.?? De vraag die ik eerder stelde heb k al enigzins opgelost.. heb het php gedeelte in language/common.php gezet en aan de array toegevoegd en zo weer laten geven in de template. EDIT: en nu ik toch een post heb gemaakt, weet er iemand toevallig een externe afbeelding host die gif ondersteunt? [ Bericht 7% gewijzigd door Skunk-m op 05-09-2013 15:35:33 ] | ||||||
Darkomen | donderdag 5 september 2013 @ 17:10 | |||||
Alles is mogelijk, of wil je precies weten hoe en waar? Gifs kan je hosten op imgur.com. | ||||||
pascal08 | zaterdag 7 september 2013 @ 11:02 | |||||
Ik heb m'n database veranderd. Nu heb ik 1 database met teams en 1 database met spelers. Ik heb alleen geen flauw idee hoe ik nu alleen teams selecteer met spelers met een bepaalde eigenschap. Voorbeeldje:
M'n query wordt dan:
...toch? Hoe moet ik nu teams selecteren met spelers die allemaal een rating boven de 60 hebben? | ||||||
boem-dikkie | zaterdag 7 september 2013 @ 11:45 | |||||
Gewoon met een WHERE achter je query? | ||||||
Rockfire | zaterdag 7 september 2013 @ 11:47 | |||||
| ||||||
pascal08 | zaterdag 7 september 2013 @ 11:48 | |||||
Dat levert alle teams met tenminste 1 speler met een rating boven de 60. Nu wil ik alleen teams waarvan alle spelers een rating boven de 60 hebben. Ik ben zo slecht met SQL. ![]() | ||||||
pascal08 | zaterdag 7 september 2013 @ 12:50 | |||||
EDIT: Ik heb de oplossing gevonden! ![]() http://sqlfiddle.com/#!2/481b7/17 [ Bericht 2% gewijzigd door pascal08 op 07-09-2013 13:26:21 ] | ||||||
Apekoek | zaterdag 7 september 2013 @ 14:00 | |||||
Weet niet of dit de juiste locatie is om het te vragen maar wat betekent het wanneer jouw "initial connection" erg traag is? Wat kan ik daar aan doen? Heeft dat met de server of de website zelf te maken? | ||||||
#ANONIEM | zaterdag 7 september 2013 @ 14:33 | |||||
Zou wel handig zijn om te weten wat voor connectie | ||||||
Light | zaterdag 7 september 2013 @ 19:14 | |||||
Een team met alleen spelers met een rating van 60 of meer heeft geen enkele speler met een rating van minder dan 60. | ||||||
Apekoek | maandag 9 september 2013 @ 10:41 | |||||
Ik ben hier redelijk noob in, maar initial connection speed heeft te maken met het inladen van de eerste byte. Gaat een VPS veel beter zijn dan shared hosting? Ik wil namelijk een vlotte site draaien gericht op het buitenland. Ik heb nu namelijk een aanbieding op het oog, maar 0,5ghz en 356mb ram oid. Is dat genoeg voor een blog die eventueel vaak bezocht zal gaan worden? [ Bericht 9% gewijzigd door Apekoek op 09-09-2013 11:03:55 ] | ||||||
rekenwonder | maandag 9 september 2013 @ 11:12 | |||||
Eerste byte van wat? :s In welke context kwam je de term tegen? | ||||||
zoem | maandag 9 september 2013 @ 11:19 | |||||
Wat is veelbezocht? Ik vind de aangeboden specs eigenlijk erg karig. Voor nog geen 10E per maand kun je elders meer dan het dubbele huren. | ||||||
Apekoek | maandag 9 september 2013 @ 12:15 | |||||
Tussen de 200 en 400 bezoekers per dag. Het is een website die voor een ander land is bedoelt. VPS server mogelijkheden zijn daar minder en dus duurder, vandaar. Echter is een Nederlandse VPS ook goed voor een site buiten NL gericht? Ik heb begrepen dat je dan alsnog in Google van het desbetreffende land minder goed rankt. | ||||||
zoem | maandag 9 september 2013 @ 12:36 | |||||
Dat klopt, het kan ietwat schelen in ranking. De weging ervan is echter lang niet zo zwaar als het hebben van goede content. Er zijn Nederlandse hostingpartijen die geolocalisatie aanbieden; wie weet is dat een optie (bijv OVH) | ||||||
Apekoek | maandag 9 september 2013 @ 12:41 | |||||
Het land ligt niet in Europa, toch goed om hier even naar te kijken. | ||||||
rekenwonder | dinsdag 10 september 2013 @ 08:47 | |||||
Hangt ook samen met de blog-software. Sommige blog-software neem geen genoegen met 356 MB. | ||||||
KomtTijd... | dinsdag 10 september 2013 @ 12:33 | |||||
Ik begin Symfony2 een beetje onder de knie te krijgen. Werkt wel geniaal zeg! | ||||||
Rockfire | dinsdag 10 september 2013 @ 12:46 | |||||
Ik hoop er binnenkort mee aan de slag te mogen voor een klant. | ||||||
Crutch | dinsdag 10 september 2013 @ 18:02 | |||||
Werkt erg fijn inderdaad. Zowel Twig als Doctrine zijn ook erg handig. Moest aan het begin nog wel even wennen aan de verschillende manieren om de zooi te configuren (yml,php annotation), maar heb nu wel mijn draai gevonden. Mijn werkgever laat mij een dezer maanden een Symfony-project doen, dus ben benieuwd. | ||||||
KomtTijd... | dinsdag 10 september 2013 @ 18:11 | |||||
Ja idd, dat maakt het er niet altijd duidelijker van. Het is voor mij ook voor het eerst dat ik echt OO werk dus het is wel even wennen en een hoop leren, maar ik merk nu al hoe makkelijk het is om sommige dingen te bouwen. | ||||||
Crutch | dinsdag 10 september 2013 @ 18:24 | |||||
Ik ben erg OO-minded en ben daarom blij verrast met Doctrine. Trouwens.. lessphp voor je css ![]() http://isometriks.com/using-less-with-symfony2 | ||||||
Rockfire | dinsdag 10 september 2013 @ 18:59 | |||||
Doctrine heb ik een paar maand geleden voor het eerst gebruikt in combinatie met Zend Framework 2, inderdaad erg handig! Twig heb ik nog niet gebruikt, maar ga ik zeker ook eens uitproberen. | ||||||
Maringo | dinsdag 10 september 2013 @ 19:04 | |||||
Ik ben er ook mee bezig icm Twig en Doctrine. Ideaal inderdaad. ![]() | ||||||
Crutch | dinsdag 10 september 2013 @ 19:05 | |||||
PHPStorm ondersteunt Symfony2 nu ook. Volgens mij krijg je in een nieuwere versie zelfs een commandline interface. ![]() | ||||||
TwenteFC | dinsdag 10 september 2013 @ 22:30 | |||||
![]() | ||||||
Apekoek | woensdag 11 september 2013 @ 06:54 | |||||
Waar moet ik dan aan denken bij wordpress? | ||||||
rekenwonder | woensdag 11 september 2013 @ 08:29 | |||||
Dat is uiteraard van allerlei factoren afhankelijk zoals gebruikte plugins, aantal bezoekers etc. 356 MB lijkt me echter aan de krappe kant. Begin eens bij 1 GB. | ||||||
KomtTijd... | woensdag 11 september 2013 @ 09:24 | |||||
Lolwhut? Php memory limit staat normaliter op 64 MB, en als je dat daadwerkelijk haalt met php moet je toch eens flink achter je oren gaan krabben, want dat is best wel extreem. | ||||||
rekenwonder | woensdag 11 september 2013 @ 16:56 | |||||
Wat zou jouw advies zijn? | ||||||
KomtTijd... | woensdag 11 september 2013 @ 16:58 | |||||
Voor een wordpressblog? gewoon shared hosting. | ||||||
papernote | woensdag 11 september 2013 @ 17:00 | |||||
Wordpress geeft geen (althans, hier: http://wordpress.org/about/requirements/) vereisten aan het geheugengebruik. De standaard-instelling van PHP lijkt voldoende. Een paar MB moet ook genoeg zijn voor iets als Wordpress. Mocht je overigens plugins, uitbreidingen of wat dan ook toevoegen aan de standaard Wordpress, dan kan het geheugengebruik toenemen. Dat is ook de reden waarom je zoveel "excessive PHP memory wordpress"-topics ziet. | ||||||
Pakspul | woensdag 11 september 2013 @ 17:25 | |||||
Zelfs een 64MB programma kan op een 32MB systeem draaien, alleen gaat je systeem dan wel swappen. Maar je moet kijken naar hoe vaak je site per seconde wordt aangeroepen. Performance loads uitvoeren om te kijken wat de resultaten zijn onder welke belasting. Ga je akkoord met 2 seconde laadtijd op piek tijden? Dat zijn vragen die waar je achter moet komen wat de echte laadtijden zijn en wat je acceptabel vindt. | ||||||
Crutch | zaterdag 14 september 2013 @ 13:08 | |||||
Is Symfony een beetje te draaien op Shared Hosting? Iemand ervaring? | ||||||
KomtTijd... | zaterdag 14 september 2013 @ 20:27 | |||||
Waarom niet? | ||||||
Tijn | zaterdag 14 september 2013 @ 21:11 | |||||
Nou, ik ben van de week voor het eerst op een project gezet dat met Symfony 2 is gedaan en dat is een partij sloom, niet normaal. Ik hoop niet dat dit representatief is voor het framework ![]() | ||||||
zoem | zaterdag 14 september 2013 @ 21:12 | |||||
Je moet ook een opcode cache gebruiken. Dat scheelt enorm. | ||||||
zoem | zaterdag 14 september 2013 @ 21:28 | |||||
Ik denk dat je niet binnen het proces moet kijken, maar naar wat het per request kost aan geheugen. Dan kun je uitrekenen hoeveel requests je kan bedienen met het beschikbare geheugen. Stel dat je mod_php gebruikt dan ben je per apacheproces toch zeker zo'n 30MB kwijt. Dus bij ~12 concurrent requests zit het geheugen al vol. En dan reken ik de database nog niet mee. | ||||||
kawotski | maandag 16 september 2013 @ 09:21 | |||||
Wie kan mij helpen met dit waarschijnlijke simpele probleem. Ik heb een tabel airlines met daarin 100 airlines. Nu wil ik de 1e, 30e, 60e en 90e tonen in 1 query. Nu stoei ik met LIMIT maar het enige waar ik opkom is om het apart uit te voeren, dus per stuk. | ||||||
Tijn | maandag 16 september 2013 @ 09:51 | |||||
http://stackoverflow.com/(...)-n-th-row-from-mysql | ||||||
kawotski | maandag 16 september 2013 @ 11:18 | |||||
Volgens mij is dit niet de juiste. Wat ik wil is (sorry dat ik het niet goed heb uitgelegd) dat de eerste airline een variabel wordt en de 30e een variabel die ik daarna combineer om er een url van te maken. Dat doe ik ook voor de 31e en 60e and so on. Mijn mysql kennis is nog net niet van het niveau dat ik hier een mooi iets neer kan zetten. Maar ik denk ergens dus aan een subquery met limit 0,1 en 30,1 (?) | ||||||
zoem | maandag 16 september 2013 @ 11:27 | |||||
Dat zou kunnen werken als je het combineert met een UNION. | ||||||
kawotski | maandag 16 september 2013 @ 12:44 | |||||
ik geef nog even wat info waar ik naar toe wil. Ik probeer van alles maar ik krijg een error omdat ik ORDER BY gebruik icm UNION, $airline1 = SELECT airline FROM `airlines` ORDER BY airline LIMIT 0,1 $airline2 = SELECT airline FROM `airlines` ORDER BY airline LIMIT 30,1 | ||||||
Pakspul | maandag 16 september 2013 @ 12:51 | |||||
Maar wil je het alleen met 0 en 30, of 0, 30, 60, 90, 120, etc.. want dan klopt de eerder stackflow link wel weer. | ||||||
kawotski | maandag 16 september 2013 @ 13:04 | |||||
Ik heb iets te breed ingezet. Ik wil uit mijn tabel de eerste airline, de 30e, de 31e, de 60e, de 61e en de 90e. Dan krijg je (wil ik) bijv. als resultaat Air Canada - KLM, en daarna KLM Cityhopper - Qantas (dus alleen die namen en niet wat ertussen zit ik ben nu hier naar aan t kijken: http://stackoverflow.com/(...)lt-of-a-select-query | ||||||
Pakspul | maandag 16 september 2013 @ 13:14 | |||||
Dan is de stackflow link die gegeven is perfect. Ik heb er lokaal even mee getest, aangezien ik geen tabel met record had heb ik de 'mysql' database in phpmyadmin even gebruikt en dan naar de tabel 'time_zone'
Met deze query krijg ik er bijna uit wat je wil hebben. Speel hier eens mee, leer de operator modulo eens kennen en verander eens kleine dingen er aan. | ||||||
kawotski | maandag 16 september 2013 @ 13:28 | |||||
Dat werkt , ik ga nog even verder klooien ![]() | ||||||
Pakspul | maandag 16 september 2013 @ 13:30 | |||||
Airlines per airlines in een variabel? Die begrijp ik niet helemaal. | ||||||
kawotski | maandag 16 september 2013 @ 13:33 | |||||
Stap 2 is dat ik volgens voorbeeld de 1e combineer met de 30e, dus 1Time en Air Arabia Egypt samenvoeg in 1 url. | ||||||
Pakspul | maandag 16 september 2013 @ 13:38 | |||||
Het zal vast wel weer in een query kunnen, misschien dat die dan je subquery wordt waar je dan weer doorheen moet spitten, maar als het om maar 6 resultaten gaat kan kun je het ook in PHP oplossen.
Mocht je dan later je query voor mekaar krijgen dan kun je het er altijd nog uitslopen, maar dan kun je nu verder ![]() | ||||||
kawotski | maandag 16 september 2013 @ 13:45 | |||||
Dat is ook wel weer waar, ik ga dat eens proberen. Thanks alvast ![]() | ||||||
Alfje | maandag 16 september 2013 @ 21:10 | |||||
Als je een kolom numrow in de tabel hebt staan zoals in je voorbeeld kan je ook IN gebruiken.
| ||||||
TwenteFC | dinsdag 17 september 2013 @ 22:42 | |||||
![]() | ||||||
Crutch | woensdag 18 september 2013 @ 21:46 | |||||
Het snelste framework is géén framework. | ||||||
KomtTijd... | donderdag 19 september 2013 @ 11:55 | |||||
Even een stukje semantiek, wat staat beter?
of een combinatie van? | ||||||
Pakspul | donderdag 19 september 2013 @ 12:05 | |||||
Ik gebruik veelal de eerste. controller, action, parameters zo bekijk ik het. Als je in een programmeer taal ook een functie aanroept dan doe je ook $obj->Function($varA, $varb); Dus eerst definieer je de class (controller) dan roep je de functie aan (action) en geef je aan welke parameters je meegeeft. | ||||||
KomtTijd... | donderdag 19 september 2013 @ 12:20 | |||||
Zo heb ik het nu ook ja. Maar de breadcrumbs op de pagina staan wel weer zo:
Daarmee zou het consistenter zijn om de ID voor de action te plaatsen. Maar misschien is het ook wel gewoon een dom idee dat een URL consistent zou moeten zijn met breadcrums. | ||||||
Tijn | donderdag 19 september 2013 @ 12:23 | |||||
Ik probeer urls meestal zo compact mogelijk te houden. Ik zou zelf voor vorm #2 gaan. | ||||||
KomtTijd... | donderdag 19 september 2013 @ 12:29 | |||||
Overigens moet ik erbij zeggen dat het ook een REST-api is. Heb nog niet helemaal in mijn hoofd wat daarvoor de URL-structuur zou moeten worden. Het liefst heb je dan natuurlijk alleen /asset en /asset/id en regel je de actions met het type request (get/put/post/delete). | ||||||
Light | vrijdag 20 september 2013 @ 22:42 | |||||
Ik zou voor meervoud kiezen ipv enkelvoud. En /assets/1/edit heb je eigenlijk alleen nodig voor web. Om een edit te kunnen maken, moet er een edit-pagina zijn. En daar voorziet REST niet in. Dan kom je op zoiets:
| ||||||
Juicyhil | vrijdag 20 september 2013 @ 22:46 | |||||
De meeste conventies die ik tegenkom spreken altijd over enkelvoudige namen... | ||||||
Light | vrijdag 20 september 2013 @ 22:57 | |||||
Als je het helemaal netjes wilt doen, gebruik je meervoud voor het opvragen van de lijst (en toevoegen aan de lijst) en enkelvoud voor acties die op 1 item gaan. Maar dat heeft weer als nadeel dat je niet een stuk na een slash kunt weghalen en een geldige url overhoudt. | ||||||
Juicyhil | vrijdag 20 september 2013 @ 23:01 | |||||
Enige consistentie daarin is inderdaad wel gewenst. Een url als /search/results vind ik dan wel weer geoorloofd. Maar bijvoorbeeld /user/1/profile zou ik dan dus wel enkelvoud laten. | ||||||
Light | vrijdag 20 september 2013 @ 23:10 | |||||
Ik neig meer richting meervoud, maar smaken verschillen. En over consistentie zijn we het wel eens. Als je /user/1 gebruikt, dan ook /user. En als je /users wilt gebruiken, dan ook /users/1. | ||||||
xaban06 | donderdag 26 september 2013 @ 00:08 | |||||
Ik ben bezig met het bouwen van een nieuwssysteem, mijn vraag is welk type moet ik gebruiken om 'datum/tijd' op te slaan? Vroeger gebruikte ik gewoon varchar en gebruikte formaat: 201309260007 (2013 - 09 - 26, 00:07). Dit was makkelijk om records uit 2013 te zoeken, records uit een bepaald maand te zoeken etc. Echter heeft het ook zijn nadelen. Wat raden jullie aan? | ||||||
#ANONIEM | donderdag 26 september 2013 @ 00:11 | |||||
Dat moet eeuwen geleden zijn dan ![]() Je hebt gewoon het type DATETIME die slaat de datum op als "Y-m-d H:i:s" "2013-09-26 00:11:00" | ||||||
xaban06 | donderdag 26 september 2013 @ 00:26 | |||||
En bestaat daar ook een PHP functie voor om bijvoorbeeld 'nu-3 jaar' te doen? Dus "2010-09-26 00:11:00" | ||||||
zoem | donderdag 26 september 2013 @ 00:32 | |||||
Dat kan ook met MySQL: UNIX_TIMESTAMP(datum) > $mystamp, of iets met YEAR(datum) afhankelijk van wat je wilt bereiken. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 00:35 | |||||
Ja, maar je kunt het beter in mysql zelf doen.
Waarvoor maak je een nieuwssystem trouwens? [ Bericht 1% gewijzigd door #ANONIEM op 26-09-2013 00:37:38 ] | ||||||
xaban06 | donderdag 26 september 2013 @ 00:39 | |||||
Voor mij zelf, een hobby website. Kan helaas geen kant en klare systeem gebruiken omdat bij ieder pakket wel iets mist. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 00:40 | |||||
Ik snap je dilemma. Maak je gebruik van classes? | ||||||
xaban06 | donderdag 26 september 2013 @ 00:42 | |||||
Nee. Ik heb PHP geleerd met versie 4, toen was er nog niet echt OOP ondersteuning, de boeken die ik gebruikte gingen er dus ook niet echt diep op in. Helaas, nooit geleerd. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 00:43 | |||||
Dan zou ik vanaf het begin af aan beginnen. Wat er toen in die boeken stond is nu gevaarlijk(was het toen ook al). Heb je toevallig een voorbeeld van je code? | ||||||
xaban06 | donderdag 26 september 2013 @ 00:43 | |||||
Nee, al jaren niet meer gescript ![]() Om nu vanaf begin te beginnen, pfff, gaat weer zoveel tijd in zitten. Even kijken of ik iets kan vinden (eigen code). | ||||||
xaban06 | donderdag 26 september 2013 @ 00:48 | |||||
Ok, heb iets kunnen vinden, maar is maar half, ik zie dat ik tig bestanden heb gebruikt waardoor ik niet meer weet wat wat is ![]()
| ||||||
xaban06 | donderdag 26 september 2013 @ 00:55 | |||||
Dit wordt de structuur ongeveer, is nog niet af.
| ||||||
Kakdieusernameisalbezet | donderdag 26 september 2013 @ 00:57 | |||||
Hallo, vergeef mij dat ik een php noob ben, ik wil het graag leren. Ik heb 2 vragen: Ik ben wat aan het klooien met php en mysql. Nu maak ik dat in een mapje op de pc, en upload ik dit naar m'n server. Alles werkte prima, maar sinds vanmiddag, van het 1 op andere moment wordt de php code lokaal niet meer geparsd. Dus als ik de file dan open in chrome zie ik de code ipv het resultaat. Als ik deze file upload naar m'n server werkt alles naar behoren. Enig idee hoe dit zou kunnen komen zonder instellingen te hebben verander/software geïnstalleerd of gedeïnstalleerd etc.? En vraag 2: Ik heb hiervoor altijd in actionscript geprogrammeerd. Ik ben toe aan iets nieuws en daarom begonnen met php/mysql. Welk boek raden jullie aan om goed te leren phpen? Ik heb wel 2 boeken maar daar wordt teveel over syntax geleutert, dat snap ik allemaal wel... Een soort van boek met tutorials heeft m'n voorkeur.. Bednakt voor het lezen en antwoorden! | ||||||
#ANONIEM | donderdag 26 september 2013 @ 00:57 | |||||
Oei ![]() Het is ook makkelijker met classes te werken die kun je automatisch inladen. ik zou alleen een category_id meegeven ipv de cat naam. Dan kun je een tabel maken met categorieën en die joinen op news | ||||||
zoem | donderdag 26 september 2013 @ 00:57 | |||||
Let je wel op met sql-injectie? En staat $first en $second voor wat ik denk dat het staat? Wat gebeurt er dan wanneer je de website in een ander pad draait? Gebruik hiervoor een router class, te vinden in allerlei frameworks. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 00:59 | |||||
voorbeeld van de code ![]() Ik zou geen boeken raadplegen. Het beste is om de bekende frameworks na te lopen en kijken hoe dat in elkaar steekt. Lees je ook in op OOP er zijn zat voorbeelden met uitleg online. | ||||||
Kakdieusernameisalbezet | donderdag 26 september 2013 @ 01:02 | |||||
Gaat niet om de code, als ik in een pagina <?php echo "hallo"; ?> doe laat ie het ook zo zien, ipv dat de output "hallo" is. Dit heeft sowieso niet met de code te maken, op alle browsers geeft ie ehtzelfde probleem. Geen idee waar het aan kan liggen. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 01:03 | |||||
klinkt alsof de php module niet wordt geladen. Wat voor webserver heb je? Xampp? | ||||||
Kakdieusernameisalbezet | donderdag 26 september 2013 @ 01:05 | |||||
Mja zoiets dacht ik al, alleen grappige is dat ik nooit zoiets heb geïnstalleerd. Ik ben wat phptutorials gaan doen, phpfiles maken in dreamweaver, openen met chrome en dat werkte. Niks voor geïnstalleerd | ||||||
#ANONIEM | donderdag 26 september 2013 @ 01:06 | |||||
Dan zal dreamweaver een ingebouwde server hebben gehad. Installeer XAMPP en probeer opnieuw ![]() | ||||||
Kakdieusernameisalbezet | donderdag 26 september 2013 @ 01:08 | |||||
Haha yes sir, thanks! Morgen direct proberen! | ||||||
xaban06 | donderdag 26 september 2013 @ 03:01 | |||||
Een nieuws artikel kan meer dan 1 categorien hebben ![]() Een voorbeeld record wordt dan 1|6|9, artikel zit dus in category 1, 6 en 9. Of kan dat ook slimmer/handiger/logischer? | ||||||
#ANONIEM | donderdag 26 september 2013 @ 03:21 | |||||
koppel tabellen. | ||||||
Devolution | donderdag 26 september 2013 @ 08:33 | |||||
Een aanrader voor beginners: http://www.usbwebserver.net/ | ||||||
Chandler | donderdag 26 september 2013 @ 09:06 | |||||
Niet alleen voor beginners hoor ![]() | ||||||
Pakspul | donderdag 26 september 2013 @ 09:58 | |||||
Meervoud klopt niet, want als jij een pagina asset/1 hebt, dan is het logisch dat er meerdere zijn. Dus je hebt het al over meervoud. Zelfde als bij database tabellen. Een tabel "persons" noemen is vreemd, aangezien er meerdere records al in komen te staan over personen. Daarom gebruik ik altijd enkelvoud. Meervoud in urls kom ik ook eigenlijk nooit tegen, zelfs database tabellen in meervoud niet. | ||||||
slacker_nl | donderdag 26 september 2013 @ 10:01 | |||||
Ik ben niet de intended audience, maarruh.. waarom is het beter dan? Want ik zie niet wat er moeilijk is aan een webserver optuigen die PHP serveert.. | ||||||
Chandler | donderdag 26 september 2013 @ 10:12 | |||||
Omdat het klik en play is! sterker nog, gewoon uitpakken, starten en het werkt! XAMPP en dergelijke packs bevatten veel meer dan een gemiddelde webdeveloper nodig heeft (imo). Daarnaast doet het precies wat een 'normale' webserver ook doet, het serveren van pagina's! ![]() Maar goed, alles is persoonlijk maar mijn voorkeur gaat idd naar usbwebserver aangezien ik vele webservers heb geprobeerd en toch steeds bij deze terug kom! ![]() | ||||||
KomtTijd... | donderdag 26 september 2013 @ 10:21 | |||||
sudo apt-get install lamp-server^![]() | ||||||
xaban06 | donderdag 26 september 2013 @ 10:45 | |||||
Hoe bedoel je? Een aparte relationship tabel? | ||||||
Feola | donderdag 26 september 2013 @ 11:43 | |||||
Ik heb een aantal records opgeslagen, met een veld datum, opgeslagen als date("c"). Als ik de records van de laatste 2 uur wil ophalen, wil ik dat doen met:
Alleen krijg ik niks terug? $nu en $einddatum geven wel
terug, hoe kan dit? Of kan dit veel makkelijker/ effectiever? | ||||||
KomtTijd... | donderdag 26 september 2013 @ 11:47 | |||||
`date` is wel een datetime veld? | ||||||
KomtTijd... | donderdag 26 september 2013 @ 11:48 | |||||
...in goed Nederlands ook wel koppeltabel genoemd ja. | ||||||
Feola | donderdag 26 september 2013 @ 12:01 | |||||
Nee, moet dat persé? | ||||||
zoem | donderdag 26 september 2013 @ 12:04 | |||||
Ja, anders gaat het nooit werken... tenzij je de string on the fly naar een datetime omzet met een sql-functie. Maar dat is iets wat je liever niet doet. | ||||||
Feola | donderdag 26 september 2013 @ 12:09 | |||||
Oke, `date` is nu een datetime. Datums in de db staan er als volgt in: 2013-09-26 11:59:33 2013-09-26 11:55:00 etc Nu en einddatum heb ik op deze manier ingesteld:
en geven dit als output: 2013-09-26 12:08:17 2013-09-26 10:08:17 Lege output, zie ik nog iets over het hoofd? | ||||||
Maringo | donderdag 26 september 2013 @ 12:21 | |||||
Ook geen error? | ||||||
Rockfire | donderdag 26 september 2013 @ 12:21 | |||||
Misschien moet je $nu en $einddatum in je query even omdraaien ![]() | ||||||
Feola | donderdag 26 september 2013 @ 12:22 | |||||
Aargh, ik was er zelf net achter ![]() | ||||||
zoem | donderdag 26 september 2013 @ 12:27 | |||||
Om verwarring te voorkomen zou je $einddatum beter anders kunnen noemen. Het is eigenlijk de begindatum en $nu is je einddatum. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 21:24 | |||||
Je kan het ook gewoon in MYSQL zelf doen ![]() | ||||||
#ANONIEM | donderdag 26 september 2013 @ 21:58 | |||||
Ik ben nu al zeker een jaar met php bezig, en ik zou zeggen dat ik het redelijk goed beheers maar nu loop ik tegen iets simpels aan wat ik gewoon niet begrijp ![]() search.php
Met
Wat zie ik over het hoofd? ![]() Edit: Geen idee hoe ¬ opeens in de uri staat, dat moet een ampersand zijn.., in het invoerveld hier staat die gewoon als ampersand.. [ Bericht 2% gewijzigd door #ANONIEM op 26-09-2013 22:01:34 ] | ||||||
Crutch | donderdag 26 september 2013 @ 22:15 | |||||
Wat probeer je te bereiken? Misschien de hele search snippet even posten? | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:16 | |||||
Ik neem aan dat je array_key_exists() bedoelt en niet key_exists? als je iets uit een invoerveld in de URL wilt zul je urlencode moeten gebruiken. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:18 | |||||
key_exists is een alias, dus zou niet uit moeten maken. urlendecode was ik vergeten, even doen ja ![]() Al gevonden, Het moest
Opgelost dus. [ Bericht 0% gewijzigd door #ANONIEM op 26-09-2013 22:19:52 ] | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:21 | |||||
...ik mag aannemen dat je zo'n maffe if niet in je productiecode zet? | ||||||
Light | donderdag 26 september 2013 @ 22:21 | |||||
empty() controleert ook op null-waardes. Als een variabele null is, is deze ook empty. Die extra null-check is dus niet nodig. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:22 | |||||
Wat is er maf aan? Ah, thx. | ||||||
slacker_nl | donderdag 26 september 2013 @ 22:23 | |||||
Wat is er gek aan? (even los van het commentaar van Light). | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:24 | |||||
normaal heb je in een framework functies die de requests afvangen en controleren op foutieve data. | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:25 | |||||
Nouja dat, plus het lijkt meer een soort van puzzelopdracht om de haakjes en dubbele negaties te ontcijferen. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:26 | |||||
Ik gebruik geen framework. Hoe bekijk jij dan of iets van je $_GET is zoals je het wil? (In dit geval niet leeg of niet opgegeven..) | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:27 | |||||
gewoon met empty(). | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:28 | |||||
Ja dat heb ik nu, zie de opmerking van Light. ![]()
[ Bericht 0% gewijzigd door #ANONIEM op 26-09-2013 22:28:40 ] | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:29 | |||||
Wat dacht je van
...om maar een bizarre dwarsstraat te noemen. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:29 | |||||
En dan een warning krijgen dat de key "not" niet bestaat ![]() [ Bericht 5% gewijzigd door #ANONIEM op 26-09-2013 22:30:00 ] | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:30 | |||||
[ Bericht 9% gewijzigd door #ANONIEM op 26-09-2013 22:32:44 ] | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:30 | |||||
empty controleert ook op bestaan. | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:30 | |||||
http://php.net/manual/en/function.empty.php Documentatie. Wat moesten we zonder. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:31 | |||||
Meen je die? ![]() | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:31 | |||||
Ik deed moeilijk om niks dus ![]() | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:32 | |||||
Ziet er netjes uit wel. Toch even overwegen misschien | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:34 | |||||
Voordeel van (static) classes en functies ![]() Mijn favo voor lokaal testen vand data
[ Bericht 29% gewijzigd door #ANONIEM op 26-09-2013 22:35:55 ] | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:36 | |||||
die jat ik even. ![]() | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:36 | |||||
Echt ga een framework gebruiken allemaal. Zoveel onnodige hoofdpijn hier... ![]() | ||||||
Light | donderdag 26 september 2013 @ 22:36 | |||||
Dan zou ik het wel iets uitgebreider maken, al was het maar omdat empty() ook true kan opleveren voor situaties waarbij er wel data (de string "0") aanwezig is. Er zijn meer situaties, maar die lijken me minder van belang voor $_GET en $_POST. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:37 | |||||
Sssssssst ik laat hem langzaam die kant op gaan xD | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:37 | |||||
Zijn er eigenlijk al kant en klare frameworks voor dit soort basis dingen? Ik kan er natuurlijk zelf een schrijven maar waarom het wiel opnieuw uitvinden ![]() [ Bericht 1% gewijzigd door #ANONIEM op 26-09-2013 22:37:50 ] | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:38 | |||||
![]() | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:38 | |||||
Oke ik snap hem al ![]() | ||||||
Maringo | donderdag 26 september 2013 @ 22:38 | |||||
Dat is precies wat ik dacht toen ik je bericht tevoorschijn zag komen... | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:38 | |||||
Is dat zo'n rare vraag dan? ![]() | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:38 | |||||
Het ging om een voorbeeld getypt in dit scherm xD daarnaast wil je 0 wel opvangen, een id kan 0 zijn. Maar je hebt gelijk dat je er meer controles op wilt hebben dan dit. | ||||||
Maringo | donderdag 26 september 2013 @ 22:39 | |||||
Nou, Google. Plus dat overal tegenwoordig wel een framework voor is. | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:39 | |||||
....als je al een jaar met PHP bezig bent en nog nooit van een framework gehoord hebt? Ehja. | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:39 | |||||
Ik weet prima wat een framework is ![]() | ||||||
Light | donderdag 26 september 2013 @ 22:39 | |||||
Uitzoeken hoe dingen werken kan heel goed zonder framework, is misschien nog wel beter dan met een framework. Voor dingen die op een live website komen, is een framework wel aan te raden. De grootste veiligheidsrisico's zijn dan meteen afgedicht (of je moet een update installeren als er een bug gefixt is). | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:40 | |||||
dit^ Al is het waarschijnlijk wel handig als je zelf met een framework bouwen begint. Niet omdat je een goed framework gaat maken, maar om de logica erachter te snappen ![]() | ||||||
KomtTijd... | donderdag 26 september 2013 @ 22:41 | |||||
Ik ben ook geen tegenstander van beginnen met from scratch programmeren, leer je toch beter de internals van een taal (zoal bijvoorbeeld wat de precieze eigenschappen zijn van een functie als empty(). ) | ||||||
slacker_nl | donderdag 26 september 2013 @ 22:45 | |||||
Bestaat er niet iets als defined in php? In perl doe je dit:
Want is_empty werkt niet als dusdanig.
[ Bericht 6% gewijzigd door slacker_nl op 26-09-2013 22:54:05 ] | ||||||
Light | donderdag 26 september 2013 @ 22:45 | |||||
Dat. Om de logica te begrijpen, is het heel geschikt. Zolang je dat framework maar niet gebruikt voor productiecode. ![]() | ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:47 | |||||
Ik gebruik mijn eigen voor een script ![]() Dit omdat ik een simpel iets nodig had zonder veel overhead en gezeik. Als ik een site eromheen zou bouwen had ik wel een framework genomen. (framework is in een dag geschreven ![]() [ Bericht 7% gewijzigd door #ANONIEM op 26-09-2013 22:51:35 ] | ||||||
Light | donderdag 26 september 2013 @ 22:51 | |||||
| ||||||
#ANONIEM | donderdag 26 september 2013 @ 22:53 | |||||
het is logisch dat array_keys_exists een true geeft hier ![]() ![]() | ||||||
slacker_nl | donderdag 26 september 2013 @ 22:53 | |||||
Wat ik zei dus ![]() | ||||||
Light | donderdag 26 september 2013 @ 22:57 | |||||
array_key_exists() controleert niet op de waarde, dat klopt. ![]() | ||||||
Light | donderdag 26 september 2013 @ 22:59 | |||||
Jouw code kan worden vereenvoudigd door de aanroep van array_key_exists() weg te laten. | ||||||
slacker_nl | donderdag 26 september 2013 @ 23:01 | |||||
En als de key niet bestaat gaat het dan ook niet warnen? Ja, want kennelijk heb ik het me ooit eens eerder af zitten vragen:
Ownee, dat is de value meuk. Owkee, duidelijk. [ Bericht 27% gewijzigd door slacker_nl op 26-09-2013 23:07:15 ] | ||||||
Light | donderdag 26 september 2013 @ 23:03 | |||||
Nope, niet als je isset() gebruikt. | ||||||
xaban06 | vrijdag 27 september 2013 @ 22:48 | |||||
Hoe moet je PHP en HTML apart houden? Vooral met loops vind ik het lastig. Stukje php, daaroder html, met php er door heen, onleesbaar. | ||||||
Crutch | vrijdag 27 september 2013 @ 23:12 | |||||
Een template engine gebruiken? | ||||||
Crutch | vrijdag 27 september 2013 @ 23:13 | |||||
die; |