Dan is het toch voldoende om $_SERVER['HTTP_USER_AGENT'] op te slaan bij iedere request?quote:Op zondag 10 februari 2008 20:16 schreef Chandler het volgende:
[..]
Ja ja Brouwser![]()
Maaruh gewoon, ik wil deze statistieken bewaren
Is dat niet nog simpeler? Enkel de browser-string opslaan, en pas bij het uitlezen deze "encoden" ?quote:Op zondag 10 februari 2008 23:01 schreef Chandler het volgende:
Ik heb nu een functie gemaakt die idd de meest gangbare browsers detecteerd, maar om er zeker van te zijn ga ik nu ook gewoon de browser string opslaan!
Ps. Is het handig om alle data zoals, dag, maand, jaar, cookies, plugins, referer, zoekwoorden en dergelijke infomatie in 1 tabel te zetten of is het handiger om dit in apparte tabellen te zetten?
Die functie werkt toch ook op basis van de browserstring? Dus meer heb je echt niet nodig.quote:Op zondag 10 februari 2008 23:01 schreef Chandler het volgende:
Ik heb nu een functie gemaakt die idd de meest gangbare browsers detecteerd, maar om er zeker van te zijn ga ik nu ook gewoon de browser string opslaan!
Er zijn legio plugins voor FireFox waar je het mee kan doen, ikzelf gebruik "Modify Headers", kan je alles zelf invullenquote:Op zondag 10 februari 2008 23:47 schreef Light het volgende:
[..]
Die functie werkt toch ook op basis van de browserstring? Dus meer heb je echt niet nodig.
Trouwens, een browserstring is manipuleerbaar. Je kunt er geen 100% garantie uit halen. Ik heb zo snel geen voorbeeld van een programma waar je die string volledig zelf kunt bepalen, maar er zijn vast wel van die programma's.
Edit: Je hebt realtime statistieken die je aanbied oid? Dan schiet het inderdaad niet op.quote:Apache/2.0.59 (Unix) mod_perl/1.99_17-dev Perl/v5.8.6 mod_ssl/2.0.59 OpenSSL/0.9.8e PHP/5.2.3 Server at www.ericbruggema.nl Port 80
Het is niet handig om dat nu allemaal op te slaan. Ten eerste ga je nooit al die info nodig hebben of gebruiken en ten tweede hoef je niet alles te berekenen - sla alleen de data op waaruit je de info kan destilleren,gewoon in ruwe vorm. Dan maak je later wel een scriptje om de benodigde velden te berekenen. Als je het on the fly gaat bereken met dat scriptje dat je hebt gepost dan trek je de server snel op zijn bek denk ik.quote:Op zondag 10 februari 2008 23:01 schreef Chandler het volgende:
Ik heb nu een functie gemaakt die idd de meest gangbare browsers detecteerd, maar om er zeker van te zijn ga ik nu ook gewoon de browser string opslaan!
Ps. Is het handig om alle data zoals, dag, maand, jaar, cookies, plugins, referer, zoekwoorden en dergelijke infomatie in 1 tabel te zetten of is het handiger om dit in apparte tabellen te zetten?
Deze vraag is al vaker langsgeweest, ook op Tweakers.... dus met even zoeken moet je er wel komenquote:Op maandag 11 februari 2008 08:04 schreef Chandler het volgende:
@Iedereen; het scriptje dat browscap.ini parst ga ik niet gebruiken. Aangezien het toch nogal wat preformance vraagt van de server. Ik doe nu gewoon 2 dingen voor mijn statistieken script. 1 is de $_SERVER['HTTP_USER_AGENT'] opslaan plus dat ik deze string op een paar bekende browsers check, en deze sla ik ook weer op.
Iemand nog een antwoord op mijn gebruik van de database? is dit te behappen wat ik doe of moet ik apparte tabellen voor alle onderdelen gebruiken?![]()
[PHP/(My)SQL] voor dummies - deel 55
Draait de webserver toevallig in hetzelfde domain als waar de gebruikers ingelogd zijn?quote:Op maandag 11 februari 2008 11:52 schreef Swetsenegger het volgende:
Daar ben ik weer eens.
Momenteel ben ik met een scriptje bezig waarbij de pagina die je voorgeschotelt krijgt afhankelijk is van welk persoon de pagina bekijkt. Nu kan ik dat uiteraard met een login script doet, maar aangezien het nogal vaak gebruikt moet worden is dat niet erg gebruiksvriendelijk.
Nu zit ik hier op het bedrijfsnetwerk en zijn mensen uiteraard al ingelogd. LDAP dus.
Ondertussen kan ik al info uit de LDAP server lezen, maar ik wil nu de credentials waar mensen mee zijn ingelogd vergelijken met de server om te authenticeren. Maar..., ik dnek dat ik het niet goed benader, want je credentials worden denk ik niet in de header info meegestuurd ofzo? Is dit uberhaupt mogelijk?
1 2 3 | $_SERVER['LOGON_USER'] ?> |
1 2 3 | $_SERVER['AUTH_USER'] ?> |
Hij draait in hetzelfde domain, onder apachequote:Op maandag 11 februari 2008 12:02 schreef Geqxon het volgende:
[..]
Draait de webserver toevallig in hetzelfde domain als waar de gebruikers ingelogd zijn?
[ code verwijderd ]
of
[ code verwijderd ]
is dan een optie. Werkt enkel onder IIS, voor Apache heb je mod_ntlm nodig.
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 | require_once('includes/dbconnector.class.php'); $connector = new DbConnector(); if(isset($_SESSION['user_id'])) { //Login correct, update lastactive in db $connector->query("UPDATE cmsusers SET lastactive=NOW() WHERE id='".$_SESSION['user_id']."'"); } else{ if(isset($_COOKIE['user_id'])) { $result = $connector->query("SELECT pass,thegroup FROM cmsusers WHERE id='".$_COOKIE['user_id']."'"); $row = $connector->fetchArray($result); $dbpass = $row->pass; $dbstatus = $row->thegroup; if($dbpass == $_COOKIE['user_password']) { $_SESSION['user_id'] = $_COOKIE['user_id']; $_SESSION['user_status'] = $dbstatus; } else { setcookie("user_id", "", time() - 3600); setcookie("user_password", "", time() - 3600); echo "Cookies incorrect. Cookies verwijderd."; header("Location: login.php"); } } else{ //Hij blijft hierheen gaan header("Location: login.php"); } } ?> |
Ik had alles blijkbaar al eens geconfigureerd, en de login is nu transparant (met IE, met elke andere browser krijg je gewoon een login prompt). Maar.... ik wil nu de username terug vinden van degene die op de pagina zit. De suggesties van geqxon geeft niets terug en ook $_SERVER['PHP_AUTH_USER'] geeft niets terug.quote:Op maandag 11 februari 2008 13:16 schreef fokME2 het volgende:
@Swetsenegger: Met LDAP authorisatie heb ik ook eens gespeeld en het werkte goed. Ik dacht dat ik er een classe voor had gebruikt. Misschien dat ik het thuis nog kan vinden.
Nee, de authenticatie op zich werkte al, ik kon alleen nog niet achterhalen wie de ingelogde gebruiker was. In principe mag elke gebruiker van het domein op die pagina komen, maar afhankelijk van de gebruiker kan het zijn dat je andere opties hebt.quote:Op maandag 11 februari 2008 13:58 schreef Geqxon het volgende:
Swets, wat mij bij staat is dat als je de boel met .htaccess en .htpasswd beveiligd, dat Internet Explorer dan eerst met de username en password van de domein-gebruiker in probeert te loggen. Misschien een optie?
Laat de login.php eens zien, want volgens mij set je je cookies niet goed.quote:Op maandag 11 februari 2008 13:40 schreef Tarabass het volgende:
Zoals ik al eerder in dit topic aangaf ben ik bezig met een oop-cms. Alles gaat lekker alleen loop ik tegen een probleempje aan. Inloggen gaat goed, session-variables worden geset, en de user wordt doorgestuurd naar de index page. Daar include ik een 'safe-file' die check of de session is aangemaakt, die safe.php ziet er zo uit:
[ code verwijderd ]
Echter blijft de safe-file redirecten naar de login-page. Ik heb getest of de session is geset en dit is zeker weten het geval. Zien jullie wat ik verkeerd doe, want dit is erg frustrerend
ps: Heb deze manier van werken al in een andere website gebruikt en daar werkte het perfect. Met een safe.php en een safe_admin.php beveiligde ik de pages, met een redirect naar login.php. Dit was echter wel zonder classes..
1 2 | header("Location: login.php"); |
Waarschijnlijk gaat het ophalen van de sessie data niet goed in je safe include. Initialiseer je de sessie wel goed?quote:Op maandag 11 februari 2008 13:40 schreef Tarabass het volgende:
Zoals ik al eerder in dit topic aangaf ben ik bezig met een oop-cms. Alles gaat lekker alleen loop ik tegen een probleempje aan. Inloggen gaat goed, session-variables worden geset, en de user wordt doorgestuurd naar de index page. Daar include ik een 'safe-file' die check of de session is aangemaakt, die safe.php ziet er zo uit:
[ code verwijderd ]
Echter blijft de safe-file redirecten naar de login-page. Ik heb getest of de session is geset en dit is zeker weten het geval. Zien jullie wat ik verkeerd doe, want dit is erg frustrerend
ps: Heb deze manier van werken al in een andere website gebruikt en daar werkte het perfect. Met een safe.php en een safe_admin.php beveiligde ik de pages, met een redirect naar login.php. Dit was echter wel zonder classes..
De login gebruikt een functie in een class om in te loggen en eventueel cookies te zetten.quote:Op maandag 11 februari 2008 14:18 schreef Dzy het volgende:
[..]
Laat de login.php eens zien, want volgens mij set je je cookies niet goed.
Edit: En dit gaat uiteraard ook niet werken:
[ code verwijderd ]
Want een header sturen na output is natuurlijk te laat.
Dat is inderdaad de bedoeling. Maar omdat het niet werkte ben ik eerst een stap terug gegaan naar een losse file waarin gecheckt wordt of de sessie wel bestaat. De functionaliteit komt inderdaad in een functie in de sentry-class die ik dan bovenaan de pages aanroep. Maar nogmaals, classes zijn nieuw voor mij en daarom probeer ik eerst op een manier wat duidelijk voor mij is de code uit.quote:Op maandag 11 februari 2008 14:22 schreef Farenji het volgende:
[..]
Waarschijnlijk gaat het ophalen van de sessie data niet goed in je safe include. Initialiseer je de sessie wel goed?
Die safe include is overigens niet echt oop.
Het idee achter OOP is dat je functionaliteit groepeert in logische bouwblokken waaruit je je applicatie opbouwt. Het is dan logisch om een session class te maken, waar je alle session management in regelt. Eventueel zou je die sessie class deel kunnen laten uitmaken van de user class (als in: wel aparte classes maar een user object bevat/encapsuleert een session object). Het idee is dan dat je een objectmethode maakt (bijv $user->isLoggedIn()) die je overal kan gebruiken. Deze methode van de class user kijkt dan in de sessie (maw in het sessie object dat in het user object zit) van betreffende user of alles ok is en geeft dan een 1 (ingelogd) of een 0 (niet ingelogd) terug. Aan de hand daarvan kun je dan de gevraagde pagina tonen of redirecten naar de loginpagina.
Geeft inderdaad NULL, terwijl de linkjes in het menu in het if(isset($_SESSION['user_id'])-statement wel worden weergegeven :Squote:Op maandag 11 februari 2008 14:34 schreef Dzy het volgende:
Als de sessie daadwerkelijk zou bestaan zou hij niet naar login.php gaan. Doe eens een var_dump op $_SESSION en op $_COOKIE boven de if-then-else constructies.
Nee, ik weet al waar het in zat. De session werd gestart in de constructor van de sentry-class, maar die had een verkeerde naam. Nu werkt alles zoals het moet. Erg bedankt voor het meedenken want zo wist ik welke richting ik op moest zoekenquote:Op maandag 11 februari 2008 15:41 schreef Dzy het volgende:
Werd er niet per ongeluk al output gegenereerd? (Denk het niet want dan zou je header redirect ook niet werken maar je weet het maar nooit). Kan ook whitespace zijn.
1 2 3 4 5 6 7 | WHERE id NOT IN ( SELECT id FROM foo ORDER BY created DESC LIMIT 10 ) |
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 | function getLine($page, $keyword, $pattern) { foreach ($page as $line_num => $line) { if(strstr($line, $keyword)){ if(ereg($pattern, $line, $output)){ $result = $line_num; } } } return $result; } // URL van de pagina die doorzocht moet worden $url = "http://auto.marktplaats.nl/audi/132476134-150x-audi-a3-a4-a6-tdi-golf-4-5-tdi-benzine-seat-leon-tdi.html?return=eJwdyEEOgyAQheG7mOiuIJIuxBhDb0KURiLIhBmTpk3v3qGbme9%2FzijzCaaf0Ki7Mg16V9Z92onASHlk8KdIrhwE0TlCcUbpLso35LcFuY5a7JTi8oqz6jacKbfaqlY%2FIh87%2FjVU6SpivQMw8bkhBwvq2DMS7%2Fa8ki9h5cwYuIcO4Jr7Zvr%2BAA4JNF8%3D&fta=eNptVm1uGzkMvcv86G%2FxSxQ1yBX2CoFRp10DTmLETje7Qe5ejuiRVGBRIGheKJKPfCTnUEv9vPqP5f3t%2FPjrcL4uq%2F8qdfk4P8C34%2FXh9lphPUM1%2F4nVaD3f6n%2Bny3r9cbzW9XKraX2%2B1Jf356e30%2Ff1%2FFGREpmt53%2BrYC6E6%2Bv1VPHb5fL%2BkDbnXJfL4efTsp7c8bVSXU5Hj3qokKh%2BntzftVpdgJA1A%2FFuuGGOFEoFNgx3OyZjQ9ww6naKRilvGO9Y9oeU2luZ7LLG2zxjSLJhuscQIvEoG1Z2Oyol59Ji2PQWC2vLeSfCnjUxBpHOhPw5SoA4WeaC1MDORVjBCTawkwFk49SShIkNmHJYdjqIbgwtddBumYATRZ6dEEKyogHujJBLLqW0QNgZpYyg1vLEzsgdkFe5gZ2RgKjlFh07I1A1k9LAzkjZgCh8zowYc%2FicGgRkUU%2FUP5K%2F%2B%2ByMMmQQaAVBG3mqsjZL6oxcsm4YItoZEWlJrsMG4oievCQtT6KhBXMdtjypMxIyUAiwM3K5qVJEzyNPcbU2RqRDIQRQInoZfUeQFNE7I05IaO05pylPL12rPMMfeQZN7oxQsfifGjgYKakEd%2B6MCF3yGpajR5i8nG2ueDAyTUnj%2BaQ6E5YmMC4TqG7dwJ0RFSWy0qokQ3VIHijAzojZhHJ7LqNH2ew%2BMtIZ5eLMpSlZOiMvvc9hamBnJEmdaWyKPGTjC4rjuQ4li9cvno%2FFQFuRIs%2BhOvHB5tajnOYWl1hxecyR7ymJPZXHZrDs%2FWyVzzTRlBJTnHkabSixGfLOyIWYwCB8jh7l5AsjwM4oS1aOec9ltMPdcmOUbci7METjNE0poUrTvMLw6XoIeStOYGFqpVOaQGVqKSnPzzWUrDJbQmot1s6IuKQcI6M6gwUjzzKDEHOkNoMYNMvoEXjqsVjKdIcsSYih9EOUIXGOFpcxRwSC1miWoTp2IUJYDkbmF4rixuReedmSj%2BidkfcS%2FV8Dy3Qafau20pXBKPkaCJqWRuOEOU6PzZdVfEIaOHrki94XYwNptqQ4E8b9QLrs7sNlMhaLOB4%2Bp81QXLOR0pij7NA9z3GPkGw%2FsPY%2FXwCQ0uzUBzzQaZJE7mvVpTI8%2BCxu%2BX9d%2FcrW5fZ6ORyvj%2Benl5%2B3v%2FevCEh1%2Bf7%2B9vZ4ejk%2BfWzoPdbz4eNx%2B37xT5ZjbHCsy%2BGfZf3r%2Ft9f27dMqp9fX78BmNgwHA%3D%3D&fta_ind=1&df=1"; // Naar welk begindeel moet er worden gezocht: $search1 = 'Vermogen'; // Naar welk einddeel moet er worden gezocht: $search2 = 'Cylinderinhoud'; // Wat moeten er van die regel worden opgenomen: // Het patroon maakt gebruik van reguliere expressies //$pattern = '.*'; $pattern = '.*.'; ////// $lines = file($url); $begin = getLine($lines, $search1, $pattern); $end = getLine($lines, $search2, $pattern); for($i=$begin; $i < $end; $i++) { echo $lines[$i]; } ?> |
Handig!quote:Op maandag 11 februari 2008 20:42 schreef SuperRembo het volgende:
[ code verwijderd ]
(Als je niet een hele oude MySQL versie gebruikt)
"created? Geniaal, die maakte ik normaal altijd zelf.quote:Op maandag 11 februari 2008 20:42 schreef SuperRembo het volgende:
[ code verwijderd ]
(Als je niet een hele oude MySQL versie gebruikt)
En die noem ik dus meestal created en modifiedquote:Op maandag 11 februari 2008 21:51 schreef Geqxon het volgende:
O, ik dacht dat MySQL dat veld altijd zelf aanmaakt. In dat geval hou ik het wel zoals ik het nu doe, een veld date_added en een veld date_updated.
Geen probleem. Blij dat het gelukt is.quote:Op maandag 11 februari 2008 18:55 schreef Tarabass het volgende:
[..]
Nee, ik weet al waar het in zat. De session werd gestart in de constructor van de sentry-class, maar die had een verkeerde naam. Nu werkt alles zoals het moet. Erg bedankt voor het meedenken want zo wist ik welke richting ik op moest zoeken
Je hebt het al opgelost, maar er zijn toch nog een paar puntjes waar je op kunt letten:quote:Op maandag 11 februari 2008 13:40 schreef Tarabass het volgende:
Zoals ik al eerder in dit topic aangaf ben ik bezig met een oop-cms. Alles gaat lekker alleen loop ik tegen een probleempje aan. Inloggen gaat goed, session-variables worden geset, en de user wordt doorgestuurd naar de index page. Daar include ik een 'safe-file' die check of de session is aangemaakt, die safe.php ziet er zo uit:
[ code verwijderd ]
Echter blijft de safe-file redirecten naar de login-page. Ik heb getest of de session is geset en dit is zeker weten het geval. Zien jullie wat ik verkeerd doe, want dit is erg frustrerend :(
ps: Heb deze manier van werken al in een andere website gebruikt en daar werkte het perfect. Met een safe.php en een safe_admin.php beveiligde ik de pages, met een redirect naar login.php. Dit was echter wel zonder classes..
1 2 3 4 5 6 7 | $result = $connector->query("SELECT pass,thegroup FROM cmsusers WHERE id='".$_COOKIE['user_id']."'"); $row = $connector->fetchArray($result); $dbpass = $row->pass; $dbstatus = $row->thegroup; ?> |
En als ik nu wel een iets te oude versie hebquote:Op maandag 11 februari 2008 20:42 schreef SuperRembo het volgende:
[ code verwijderd ]
(Als je niet een hele oude MySQL versie gebruikt)
Dan moet je eens kijken naar de mogelijkheden om te upgradenquote:Op dinsdag 12 februari 2008 07:44 schreef Chandler het volgende:
[..]
En als ik nu wel een iets te oude versie heb
Dan moet je het in 2 aparte queries doen: eerst een lijst van de recente records ophalen, en deze vervolgens wissen in een tweede query. Veel queries met subqueries kun je herschrijven tot een enkelvoudige query, maar bovenstaande is een goed voorbeeld waar dat niet kan.quote:Op dinsdag 12 februari 2008 08:30 schreef Chandler het volgende:
True True! maar als die mogelijkheid er nu niet is?
Loginsysteem met challenge-response systeem, sessie management en verschillende userrollen?quote:Op dinsdag 12 februari 2008 13:24 schreef saban het volgende:
* saban heeft nog steeds genoeg vrije tijd over om iets te bouwen .. ben er nog steeds niet uit 'wat'
Gastenboek? Heb je binnen paar uur klaar.
Factuursysteem? Kan, lijkt me leuk met FPDF bijv..
More?
quote:Op maandag 11 februari 2008 20:45 schreef BaggerUser het volgende:
hoi,
ben aan het proberen om advertenties van marktplaats uit te lezen en op die manier ook op een eigen site te zetten (anders moeten ze altijd twee keer worden toegevoegd op twee verschillende sites en dat is nogal een werk.
ik heb op dit moment dit:
[ code verwijderd ]
probleem waar ik mee zit (ik heb even een willekeurige advertentie gepakt, zie link in script)
is dat ik de bovenste info wel kan uitlezen , maar de onderste info (in het 2e kopje dus oa die met cyllinderinhoud) niet. iemand enig idee hoe dat kan?
sowieso, niet iemand die een minder omslachtige manier weet?
Weet je zeker dat je geen typo hebt gemaakt met Cylinder?quote:
Weet je toevallig ook een gratis (webbased) facturatiesysteem?quote:Op dinsdag 12 februari 2008 13:35 schreef Chandler het volgende:
Doe maar een factuursysteem waarbij de facturen ook opgeslagen worden in de database eventueel ook een klanten tabel! plus opslag van facturen om eventueel bij nieuwe layout de facturen in een nieuwe layout te zetten
Was het maar waar, dan zou ik daar zekers gebruik van makenquote:Op dinsdag 12 februari 2008 16:17 schreef saban het volgende:
[..]
Weet je toevallig ook een gratis (webbased) facturatiesysteem?
Dat ken ik. Nog leuker is het als je iets maakt voor een klant en er dan achter komt dat het niet werkt omdat er php-instellingen niet goed staan. Dingen als register_globals en magic_quotes_gpc mogen wmb wel uit, maar sommige hosters laten het niet toe dat aan te passen (zelfs niet met .htaccess bestandjes)quote:Op dinsdag 12 februari 2008 12:01 schreef Farenji het volgende:
Ik zit overigens op mijn werk ook opgescheept met mysql 4.0 (uit debian sarge), die heeft geen subquery support.![]()
Upgraden van tientallen servers en bovendien met software die niet 100% op nieuwere versies draait is niet zo makkelijk. Maar binnenkort moeten we wel, dat wordt dus nog leuk...
Niets, tenzij je zerofill aanzet. En da's een overbodige optie, want dat past beter in een presentatie-layer.quote:Op dinsdag 12 februari 2008 18:05 schreef Chandler het volgende:
Leuke vraag,
Wat is het verschil met tinyint(1) en tinyint(2) etc, zelfde geld voor INT
Dit getal heeft alleen invloed op eventuele padding, en alleen als je ZEROFILL voor de kolom aanzet. Het heeft geen invloed op wat je in het veld kan stoppen of hoeveel ruimte je nodig hebt. Dus als je de waarde 1 in een tinyint(3) stopt in een veld met zerofill, komt dat eruit als 001.quote:Op dinsdag 12 februari 2008 18:05 schreef Chandler het volgende:
Leuke vraag,
Wat is het verschil met tinyint(1) en tinyint(2) etc, zelfde geld voor INT
1 2 3 | ftp-nb-fget ?> |
er van uitgaande dat het veld unsigned is:quote:Op dinsdag 12 februari 2008 18:35 schreef Farenji het volgende:
[..]
Dit getal heeft alleen invloed op eventuele padding, en alleen als je ZEROFILL voor de kolom aanzet. Het heeft geen invloed op wat je in het veld kan stoppen of hoeveel ruimte je nodig hebt. Dus als je de waarde 1 in een tinyint(3) stopt in een veld met zerofill, komt dat eruit als 001.
Goed lezen:quote:Op woensdag 13 februari 2008 12:29 schreef Dreammaster het volgende:
[..]
er van uitgaande dat het veld unsigned is:
een tinyint(1) kan 10 verschillende waardes hebben namelijk 0 t/m 9
een tinyint(2) kan 100 verschillende waardes hebben 0 t/m 99
een tinyint(3) kan 256 verschillende waardes hebben 0 t/m 255
signed:
een tinyint(1) kan 19 verschillende waardes hebben namelijk -9 t/m 9
een tinyint(2) kan 199 verschillende waardes hebben -99 t/m 99
een tinyint(3) kan 256 verschillende waardes hebben -128 t/m 127
-edit- bron
quote:The display width does not constrain the range of values that can be stored in the column, nor the number of digits that are displayed for values having a width exceeding that specified for the column. For example, a column specified as SMALLINT(3) has the usual SMALLINT range of -32768 to 32767, and values outside the range allowed by three characters are displayed using more than three characters.
1 2 3 4 5 6 7 | $GLOBALS['queries']++; $GLOBALS['query'][$GLOBALS['queries']] = array("sql" => $sql, "start" => $start, "end" => $end, "time" => round($end - $start, 2)); ?> |
Dan heb je die variabele waarschijnlijk als global in een functie gebruikt. Dan komt hij namelijk automatisch ook in de $GLOBALS array te staan.quote:Op woensdag 13 februari 2008 17:56 schreef Chandler het volgende:
Was wel een array! maar blijkbaar heeft het gebruik gemaakt van een variabel die ook $query heet! ik heb de namen gerenamed en zag deze error niet meer!.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | function MakeTD($tr_start,$width,$height,$bgcolor,$value,$tr_end) { $td = ''; if (!empty($tr_start)) { $td .= '<tr>'; } if (empty($bgcolor)) { $td .= '<td width="'. $width .'" height="'. $height .'">'. $value .'</td>'; } else { $td .= '<td width="'. $width .'" height="'. $height .'" bgcolor="#'. $bgcolor .'">'. $value .'</td>'; } if (!empty($tr_end)) { $td .= '</tr>'; } echo $td; } ?> |
1 2 3 4 5 6 | MakeTD("tr","70","25","000","waarde",""); // output: // <tr><td width="70" height="25" bgcolor="#000">waarde</td> ?> |
1 2 3 4 5 6 7 8 9 10 | MakeTD("","70","25","000","waardes",""); MakeTD("","70","25","000","waardes",""); MakeTD("","70","25","000","waardes",""); // output: // <td width="70" height="25" bgcolor="#000">waardes</td> // <td width="70" height="25" bgcolor="#000">waardes</td> // <td width="70" height="25" bgcolor="#000">waardes</td> ?> |
1 2 3 4 5 6 | MakeTD("","70","25","000","waardes","tr"); // output: // <td width="70" height="25" bgcolor="#000">waardes</td></tr> ?> |
Moet veel overzichten weergevenquote:Op woensdag 13 februari 2008 22:23 schreef Geqxon het volgende:
Wat dacht je ervan om een complete table-array in een object te gooien?
Verder, heb je dan echt zoveel tabellen nodig?
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 | class Menu{ private $selected; public function Menu($selected){ $this->selected = $selected; } public function getOutput(){ global $input_parent; $result = mysql_query(" SELECT Name, HTML FROM mod_parent ORDER BY Sort ASC "); $output = '<ul id="menu">'; if ($result){ $first = true; while ($row = mysql_fetch_assoc($result)){ $selected = ($this->selected == $row['Name']); $classes = array(); if ($first){ $classes[] = 'first'; } if ($selected){ $classes[] = 'selected'; } $first = false; $class = (!empty($classes)) ? ' class="'.implode(" ", $classes).'"' : ''; $output .= sprintf('<li%s><a href="%s?parent=%s">%s</a></li>', $class, BASE_PAGE, mod_format_string($row['Name']), mod_format_string($row['HTML'])); } } $output .= '</ul>'; return $output; } } ?> |
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 | function MakeTable($table_start,$table_width,$table_bgcolor,$tr_start,$td_width,$td_height,$td_bgcolor,$td_value,$tr_end,$table_end) { $table = ''; if (!empty($table_start) AND empty($table_bgcolor)) { $table .= '<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="'. $table_width .'">'; } if (!empty($table_start) AND !empty($table_bgcolor)) { $table .= '<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="'. $table_width .'" bgcolor="#'. $table_bgcolor .'">'; } if (!empty($tr_start)) { $table .= '<tr>'; } if (empty($td_bgcolor)) { $table .= '<td width="'. $td_width .'" height="'. $td_height .'">'. $td_value .'</td>'; } else { $table .= '<td width="'. $td_width .'" height="'. $td_height .'" bgcolor="#'. $td_bgcolor .'">'. $td_value .'</td>'; } if (!empty($tr_end)) { $table .= '</tr>'; } if (!empty($table_end)) { $table .= '</table>'; } echo $table; } MakeTable("table_start","500","000000","tr","100","30","ffffff","waarde van veld 1","",""); MakeTable("","","","","100","30","ffffff","de waarde van veld 2","",""); MakeTable("","","","","100","30","ffffff","de waarde van veld 3","",""); MakeTable("","","","","100","30","ffffff","de waarde van veld 4","",""); MakeTable("","","","","100","30","ffffff","de waarde van veld 5","tr","table_end"); // output: // // <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="500" bgcolor="#000000"> // <tr> // <td width="100" height="30" bgcolor="#ffffff">waarde van veld 1</td> // <td width="100" height="30" bgcolor="#ffffff">de waarde van veld 2</td> // <td width="100" height="30" bgcolor="#ffffff">de waarde van veld 3</td> // <td width="100" height="30" bgcolor="#ffffff">de waarde van veld 4</td> // <td width="100" height="30" bgcolor="#ffffff">de waarde van veld 5</td> // </tr> // </table> ?> |
1 2 3 4 5 6 7 8 9 10 11 | $td_style = array( 'width' => '70px', 'height' => '25px', 'bgcolor' => '#000' ); $td_options = array( 'class' => 'blabla classe' ); MakeTD("waarde",$td_options, $td_style); ?> |
Zo ver ben ik nog niet dat ik met classes kan werken.quote:Op woensdag 13 februari 2008 22:43 schreef fokME2 het volgende:
@saban: Is het geen idee om sommige opties als array mee te geven?
[ code verwijderd ]
Als je dan vaak dezelfde waardes gebruikt kan je het makkelijk aanpassen door een array in je config oid. Je kan het zo gek niet bedenken!![]()
Edit: Je hebt zelf al geklust. Misschien dat het tijd wordt voor classes!![]()
Voor hetgene wat je wil is het gewoon heel geschikt.quote:Op woensdag 13 februari 2008 22:47 schreef saban het volgende:
[..]
Zo ver ben ik nog niet dat ik met classes kan werken.
Ben bezig met teveel dingen tegelijk. Zit ook een beetje te knoeien met CSS
Vandaag mijn eerste 'ontwerp' in CSS met DIV'jes gemaakt
Haha, zou ik niet durven. Heb pas vandaag geleerd hoe CSS (DIV'jes) ongeveer werkt, ga niet gelijk door een validatorquote:Op woensdag 13 februari 2008 23:05 schreef fokME2 het volgende:
[..]
Voor hetgene wat je wil is het gewoon heel geschikt.
@CSS: Gooi het eens door de w3-validator?
escape ofquote:Op donderdag 14 februari 2008 11:27 schreef Chandler het volgende:
Weet iemand een handige functie die het zelfde werkt als addslashes / magic quotes en ga zo maar door!
Als je een functie zoekt die hetzelfde doet als addslashes zou ik toch addslashes willen adviserenquote:Op donderdag 14 februari 2008 11:27 schreef Chandler het volgende:
Weet iemand een handige functie die het zelfde werkt als addslashes / magic quotes en ga zo maar door!
dat kan met mod_rewrite, maar dat is geen php (maar meer een optie van de serversoftware zelf). Google er maar eens op, zat voorbeeldenquote:Op donderdag 14 februari 2008 19:37 schreef Flaccid het volgende:
Ik heb een cms geschreven zelf. Heel simpel, je kan pagina's aanmaken, met titel enzo. Maar hoe kan ik het makkelijkst, en het veiligst die informatie uit een database halen. In zon database staat de inhoud van de pagina, de titel enz. Moet ik dat met een GET doen? Ik dacht zelf aan iets, dat je gewoon een .html moet intypen, maar dat hij dan stiekemin php de pagina pakt. Dus bijvoorbeeld: about.html , moet op een manier, met php een variable about krijgen. Als ik die variable heb, is het genoeg.
dat is pittig. Hoe kan ik het dan het beste doen?quote:Op donderdag 14 februari 2008 19:42 schreef ralfie het volgende:
[..]
dat kan met mod_rewrite, maar dat is geen php (maar meer een optie van de serversoftware zelf). Google er maar eens op, zat voorbeelden
Waarom denk je dat dat veiliger is dan bijvoorbeeld about.php of index.php?page=about?quote:Op donderdag 14 februari 2008 19:37 schreef Flaccid het volgende:
Ik dacht zelf aan iets, dat je gewoon een .html moet intypen, maar dat hij dan stiekemin php de pagina pakt. Dus bijvoorbeeld: about.html , moet op een manier, met php een variable about krijgen. Als ik die variable heb, is het genoeg.
iemand zei dat als je include door get doet, dat het dan mis gaat?quote:Op donderdag 14 februari 2008 19:53 schreef SuperRembo het volgende:
[..]
Waarom denk je dat dat veiliger is dan bijvoorbeeld about.php of index.php?page=about?
1 2 3 | include( 'content/' . $_GET[ 'content' ] . '.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 | # Allowed content $allowed = array( 'home', 'foo', 'bar' ); # Check for content and if content in allowed if( isset( $_GET[ 'content' ] ) AND in_array( $_GET[ 'content' ], $allowed ) ) { # Allowed include( 'content/' . $_GET[ 'content' ] . '.php' ); } elseif( false == isset( $_GET[ 'content' ] ) ) { # Not set } elseif( false == in_array( $_GET[ 'content' ], $allowed ) ) { # Not allowed } ?> |
Ja dat doe ik ook altijd zo.quote:Op donderdag 14 februari 2008 20:09 schreef colourAgga het volgende:
Als jij gewoon
[ code verwijderd ]
Doet dan kan het inderdaad gruwelijk misbruikt worden ja. Als jij echter ook een array gebruikt (of uit de database) met toegestane waarden is het wel redelijk proof hoor
[ code verwijderd ]
Er zijn zat diensten waar je sms-credits in kan kopen en vervolgens met PHP via een API berichten kan versturen.quote:Op donderdag 14 februari 2008 20:14 schreef Flaccid het volgende:
[..]
Ja dat doe ik ook altijd zo.
is het btw ook mogelijk/moeilijk sms berichten te versturen/ontvangen via php?
Had namelijk een idee voor een script:quote:Op donderdag 14 februari 2008 20:15 schreef colourAgga het volgende:
[..]
Er zijn zat diensten waar je sms-credits in kan kopen en vervolgens met PHP via een API berichten kan versturen.
Goed idee, kun je beter zelf bepalen. Ik ga niet naar school. Kijk of er vraag is, zoek eventueel een investeerder, schrijf een goede robuuste applicatie. Kom met een plan om er geld mee te verdienen en gaan!quote:Op donderdag 14 februari 2008 20:20 schreef Flaccid het volgende:
[..]
Had namelijk een idee voor een script:
Een online cijferkaart, waar je je cijfers naar kan toe sms'en, en dat ie dan automatisch het gemiddelde uitrekent en dergelijken. Wat je dan ook weer via sms kan opvragen. Met format: 8.5 nederlands 3x - cijfer , vak, weging. Ook kan je online toevoegen en bekijken. Is het een goed idee of te complex?
Als 16 jarige is dat lastig allemaal.quote:Op donderdag 14 februari 2008 20:24 schreef colourAgga het volgende:
[..]
Goed idee, kun je beter zelf bepalen. Ik ga niet naar school. Kijk of er vraag is, zoek eventueel een investeerder, schrijf een goede robuuste applicatie. Kom met een plan om er geld mee te verdienen en gaan!
Da's helemaal niet zo lastig, als je meer vragen hebt over technisch/financieel haalbaar moet je me maar contacten via mail/msn op adres in mijn profiel anders slibt het hier ook weer zo dichtquote:Op donderdag 14 februari 2008 20:36 schreef Flaccid het volgende:
[..]
Als 16 jarige is dat lastig allemaal.
added @ msnquote:Op donderdag 14 februari 2008 20:38 schreef colourAgga het volgende:
[..]
Da's helemaal niet zo lastig, als je meer vragen hebt over technisch/financieel haalbaar moet je me maar contacten via mail/msn op adres in mijn profiel anders slibt het hier ook weer zo dicht
http://nl3.php.net/ftp/#ftp.examples ?quote:Op donderdag 14 februari 2008 21:09 schreef Dzy het volgende:
Niemand die iets weet van FTP files downloaden en tijdens het downloaden al doorflushen naar de browser?
ik denk dat hij een filmpje aan het downloaden is die op60% is en hij al een deel wil zien?quote:Op donderdag 14 februari 2008 21:28 schreef Geqxon het volgende:
[..]
http://nl3.php.net/ftp/#ftp.examples ?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | value ), sum( `count` ) AS counter FROM statreferer WHERE sid = '7' AND TYPE = 'E' AND ( statreferer.year >= '2008' AND statreferer.month >= '08' AND statreferer.day >= '11' ) AND ( statreferer.year <= '2008' AND statreferer.month <= '11' AND statreferer.day <= '19' ) GROUP BY value ORDER BY `counter` DESC LIMIT 0 , 250 |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |