Het is nog vroegquote:Op maandag 22 mei 2006 08:47 schreef JeRa het volgende:
[..]
Mag ik vragen hoe je je dit voorstelt? Hoe kan een gebruiker zijn wachtwoord opgeven?
[..]
Meestal doe ik zoiets met een cronjob, maar in veel gevallen kan het simpeler. Als ik een tabel wijzig voer ik vaak ook nog een DELETE uit, like that:
[ code verwijderd ]
Afhankelijk van hoevaak dat uitgevoerd wordt kun je het nog randomizeren, etc
Dat is dus ook zoals ik het zou doenquote:Op maandag 22 mei 2006 08:50 schreef c0nd0r het volgende:
Terwijl ik dit type zit ik te bedenken dat ik dan die restrictie er gewoon af kan halen zodat ie wel een nieuw mailtje kan sturen, maar die link na 24 uur gewoon niet meer werkt en als iemand een wachtwoord wil resetten schoont ie de tabel op..
Bedankt voor het idee min of meerquote:Op maandag 22 mei 2006 08:53 schreef JeRa het volgende:
[..]
Dat is dus ook zoals ik het zou doenrestricties bouw ik in al mijn queries in zodat zelfs al staat het nog in de database, de gebruikers er niet bij kunnen.
Je zegt het wel heel erg simpel maar in praktijk blijkt het niet zo simpel te zijnquote:Op zondag 21 mei 2006 19:11 schreef Roönaän het volgende:
[..]
Standaard class maken en alle modulen die class laten extenden. Of als je php5 hebt gebruik maken van een interface.
-r-
1 2 3 4 5 | define("MODULEDIR", "./modules/"); ?> |
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 | include("config.include.php"); function includeModules($tpl) { // eregie {module->news} $regex = "!{module->(.*?)\}!ism"; preg_match_all($regex, $tpl, $output); foreach ($output[1] as $key => $module) { // check if module directory exists! $obOutput = ""; if (is_dir(CONSTANT("MODULEDIR") . $module)) { if (file_exists(CONSTANT("MODULEDIR") . $module . "/index.php")) { ob_start(); require_once(CONSTANT("MODULEDIR") . $module . "/index.php"); $obOutput = ob_get_contents(); ob_end_clean(); } } $tpl = str_replace($output[0][$key], $obOutput, $tpl); } return $tpl; } $tpl = "hello \"<strong>{module->news}</strong>\" hehllooo en dan hier maar een {module->poll}"; echo includeModules($tpl); ?> |
1 2 3 4 5 6 7 8 | require_once("mod_setup.php"); require_once("mod_info.php"); echo "Last 3 news items"; ?> |
1 2 3 4 5 6 | $items = 5; $template = "test"; ?> |
1 2 3 4 5 6 7 | $modname = "Edit news"; $modver = "0.1"; $modrights = "admin"; ?> |
Hoe beveiligen jullie het bestand dat aangeroepen word door de XMLhttpRequest?quote:
Wat bedoel je met beveiligen? Je controleert op user input, en meer hoef je toch niet te doen?quote:Op maandag 22 mei 2006 09:36 schreef Darkomen het volgende:
Hoe beveiligen jullie het bestand dat aangeroepen word door de XMLhttpRequest?
Eventueel kun je een header meesturenquote:Op maandag 22 mei 2006 09:54 schreef JeRa het volgende:
[..]
Wat bedoel je met beveiligen? Je controleert op user input, en meer hoef je toch niet te doen?
1 |
Zal je natuurlijk nooit helemaal lukken zonder de foute IP-adressen handmatig te blokkerenquote:Op maandag 22 mei 2006 09:58 schreef Darkomen het volgende:
BEveiligen tegen gebruik vanaf andere sites bijvoorbeeld
1 2 3 4 | XMLHttpRequestObject.setRequestHeader(\"X_USERAGENT\",\"MijnAjaxApplicatie\"); XMLHttpRequestObject.onreadystatechange = function() |
Je doet wel een send()? En ik weet niet of underscores toegestaan zijn in headernames, je kunt proberen die te veranderen in dashes (-).quote:Op maandag 22 mei 2006 10:10 schreef Darkomen het volgende:
100% uiteraard niet, maar de meeste users zijn wel tegen te houden.
Maar het lukt niet, ik doe dit:
[ code verwijderd ]
Maar ik krijg nog geen header binnen?
1 2 3 4 5 6 7 8 9 10 11 12 | switch ($row->Type){ $gettypes = "SELECT * FROM Optiemodules ORDER BY ID ASC"; $gettypes = mysql_query($gettypes); while ($types = mysql_fetch_object($gettypes)){ case $types->ID: require $types->File; break; } } ?> |
quote:Op maandag 22 mei 2006 09:36 schreef Darkomen het volgende:
[..]
http://muziek.borntobewild.nl
Hoe beveiligen jullie het bestand dat aangeroepen word door de XMLhttpRequest?
2 keer foutquote:Jouw Browser is:
Je machine draait op: Windows
Je hebt www.borntobewild.nl direct ingetypt.
Je bent hier: 0 keer geweest.
"Oudere" Opera's staan standaard geïndentified als IEquote:Op maandag 22 mei 2006 14:07 schreef the_disheaver het volgende:
[..]
[..]
2 keer foutbrowser is opera, en ik heb gewoon dat linkje gedrukt
![]()
Maar er staat juist niets. En bovendien, ik heb de nieuwste opera. Een Beta zelfs (9)quote:Op maandag 22 mei 2006 14:08 schreef c0nd0r het volgende:
[..]
"Oudere" Opera's staan standaard geïndentified als IE
In dat geval heb ik niets gezegdquote:Op maandag 22 mei 2006 14:10 schreef the_disheaver het volgende:
[..]
Maar er staat juist niets. En bovendien, ik heb de nieuwste opera. Een Beta zelfs (9)
net even naar gekeken , het enige wat hieruit komt is "1" , wat doe ik fout?quote:Op zondag 21 mei 2006 22:31 schreef Swetsenegger het volgende:
[..]
Dit heb ik kortgeleden (ook al met hulp van roonaan) in elkaar gezet:
[ code verwijderd ]
Och ja dat stukje van mn site is al te lang geslooptquote:Op maandag 22 mei 2006 14:07 schreef the_disheaver het volgende:
[..]
[..]
2 keer foutbrowser is opera, en ik heb gewoon dat linkje gedrukt
![]()
Misschien echo je een array ipv een string?quote:Op maandag 22 mei 2006 14:38 schreef broodmonkeh het volgende:
[..]
net even naar gekeken , het enige wat hieruit komt is "1" , wat doe ik fout?
Dan krijg je enkel toch 'array' terug geprint?quote:Op maandag 22 mei 2006 16:56 schreef CraZaay het volgende:
[..]
Misschien echo je een array ipv een string?
1 2 3 4 5 6 7 8 9 | $xml = !empty($_SERVER['HTTP_RAW_POST_DATA']) ? $_SERVER['HTTP_RAW_POST_DATA'] : file_get_contents('test.xml'); $vacatureid = $_GET['vacatureid']; $id = preg_match("/<ID>(.*?)<\/ID>/si", $xml,$vacatureid); echo $id; ?> |
quote:Op maandag 22 mei 2006 17:49 schreef broodmonkeh het volgende:
nee ook al voer ik een ID in dat niet bestaat dan geeft ie ook "1"
Het lijkt er dus op dat preg_match() doet wat het moet doen. Je pattern is gevonden (<ID>n</ID>), en dus geeft 'ie TRUE terug.quote:preg_match() returns the number of times pattern matches. preg_match() returns FALSE if an error occurred.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <id>2</id> <titel>Titeltest</titel> <doelstelling>Test test</doelstelling> <vraagt></vraagt> <locatie>Rotterdam</locatie> </bedrijf> <bedrijf> <id>3</id> <titel>Test Test</titel> <doelstelling>Testje</doelstelling> <vraagt>Ik vraag </vraagt> <locatie>Amsterdam</locatie> </bedrijf> |
1 2 3 4 5 6 7 8 | $matches = array(); $findID = 3; preg_match('#<bedrijf>.*<id>' . $findID . '</id>.*<titel>(.*)</titel>.* <doelstelling>(.*)</doelstelling>.*<vraagt>(.*)</vraagt>.* <locatie>(.*)</locatie>.*</bedrijf>#Uis', $data, $matches); print_r($matches); ?> |
Alle tekens matchen. Wordt hier vooral gebruikt voor newlines en spaties, bij XML bestanden staan volgende tags immers meestal op een nieuwe regel.quote:Op dinsdag 23 mei 2006 07:01 schreef fokME2 het volgende:
Die .* in die preg_match, zonder haakjes. Wat doet die precies?
Werkt, maar is niet handig. Als er iets wordt aangepast in de XML dan heb je een probleem. De manier van Roönaän is met een simpel if-statement uit te breiden voor een ID-check.quote:Op maandag 22 mei 2006 19:24 schreef JeRa het volgende:
@broodmonkeh
Zo even uit het blote hoofd met een regular expression:
[ code verwijderd ]
Wel alles op één regel zetten natuurlijk
In principe zou je beter een enkele file kunnen maken. mod.mod_name.phpquote:Op maandag 22 mei 2006 09:02 schreef Chandler het volgende:
[..]
Je zegt het wel heel erg simpel maar in praktijk blijkt het niet zo simpel te zijn
1 2 3 4 5 6 7 8 | function hasAdmin() {} function hasRuntime() {} function hasInfo() {} function getInfo() {} function getRuntime() {} function getAdmin() {} } |
1 2 3 4 5 6 7 8 9 10 11 | $requestedId = 4; $inhoud = explode('<bedrijf>', $inhoud); foreach($inhoud as $vacature) { $id = preg_match('#<id>(.*?)</id>#', $vacature, $m) ? $m[1] : 0; if($id == $requestedId) { $titel = preg_match('#<titel>(.*?)</titel>#', $vacature, $m) ? $m[1] : 0; echo '<a href="index.php?actie=bekijk&vacatureid='.intval($id).'">'.htmlspecialchars ($title).'</a><br/>'; break; } } |
Ik moet me echt gaan verdiepen in OOPquote:Op dinsdag 23 mei 2006 08:44 schreef Roönaän het volgende:
[..]
In principe zou je beter een enkele file kunnen maken. mod.mod_name.php
Die bevat een class met verschillende functies:
[ code verwijderd ]
Of getAdmin er vervolgens uitziet als function getAdmin() { include dirname(__FILE__).'/mod_name.admin.php';} maakt dan niet zo heel veel uit.
Het punt is wel dat je maar een single point of failure hebt ipv vier.
Heb je dat PHP5 Power Programming boek niet gelezen, waar je zelf mee kwam?quote:Op dinsdag 23 mei 2006 08:47 schreef Swetsenegger het volgende:
[..]
Ik moet me echt gaan verdiepen in OOP
Áls je het zo wilt opstellen. Bovengenoemde is een van de methodes die ik ooit gebruikt heb.quote:Op dinsdag 23 mei 2006 08:47 schreef Swetsenegger het volgende:
Ik moet me echt gaan verdiepen in OOP
Ik wist alles al, behalve OOP... en dat heb ik overgeslagenquote:Op dinsdag 23 mei 2006 08:53 schreef Tijn het volgende:
[..]
Heb je dat PHP5 Power Programming boek niet gelezen, waar je zelf mee kwam?
Zie je...., ik begrijp totaal niet wat je hier zegtquote:Op dinsdag 23 mei 2006 08:54 schreef Roönaän het volgende:
[..]
Áls je het zo wilt opstellen. Bovengenoemde is een van de methodes die ik ooit gebruikt heb.
Meer recent heb ik gewoon een series classes voor output modules en een serie classes voor managers ("admin tools"), en die staan aan elkaar gelinkt.
Dit om te voorkomen dat je dezelfde database management meuk voor iedere db-driven class opnieuw moet schrijven.
Grin. Je hebt een serie modules:quote:Op dinsdag 23 mei 2006 08:57 schreef Swetsenegger het volgende:
[..]
Ik wist alles al, behalve OOP... en dat heb ik overgeslagen
[..]
Zie je...., ik begrijp totaal niet wat je hier zegt
Ok, zo in tekst klinkt het logisch en wordt de toegevoegde waarde van OOP ook wel duidelijk.quote:Op dinsdag 23 mei 2006 09:07 schreef Roönaän het volgende:
[..]
Grin. Je hebt een serie modules:
basic_module.php
modules/module1.php
modules/module2.php
modules/module3.php
En een serie managers:
basic_manager.php
managers/dbmanager.php
managers/filemanager.php
managers/formmanager.php
Vervolgens stel je dat elke module een subclass is van een basic_module en elke manager een subclass van basic_manager.
Waar ik in het eerste voorbeeld de admin had als onderdeel van de module class, is het in dit voorbeeld zo dat elke module een functie heeft: getManager().
De manager heeft vervolgens een bepaalde set functies om te integreren met je content management systeem.
De modules zelf bevatten dan voornamelijk runtime info, en een relatief kleine set data om de manager aan te sturen. (Bijvoorbeeld: "welke db-tabel moet er gebruikt worden" of "welke 'aliassen' moeten er getoond worden ipv db-fields. 'user_id' => 'Gebruikersid', etc").
Altijd prettig, werkgevers die het licht zien als het om investering in de kennis van je medewerkers gaat.quote:Op dinsdag 23 mei 2006 09:18 schreef Swetsenegger het volgende:
Maar... met een beetje mazzel komt er een verschuiving in werkzaamheden en kan ik in de baas z'n tijd wat meer aan de studie
De manier van Roönaän gaat ook op zijn bek als er grote wijzigingen worden doorgevoerd. Het beste is nog altijd om een XML-parser te gebruikenquote:Op dinsdag 23 mei 2006 07:14 schreef Light het volgende:
[..]
Werkt, maar is niet handig. Als er iets wordt aangepast in de XML dan heb je een probleem. De manier van Roönaän is met een simpel if-statement uit te breiden voor een ID-check.
Begin dan met PHP6 (zie de php-src module in CVS) of pak een taal die een wat completere set aan OOP-mogelijkheden biedt; met PHP is het elke keer weer nét nietquote:Op dinsdag 23 mei 2006 08:47 schreef Swetsenegger het volgende:
[..]
Ik moet me echt gaan verdiepen in OOP
PHP5, SimpleXMLquote:Op dinsdag 23 mei 2006 11:26 schreef JeRa het volgende:
[..]
De manier van Roönaän gaat ook op zijn bek als er grote wijzigingen worden doorgevoerd. Het beste is nog altijd om een XML-parser te gebruiken
1 |
1 2 3 | $sql_query = "SELECT bericht FROM slowchat WHERE userid='{$MemCookID}' and bericht = '{$bericht}' and datumtijd >= '{$uurnu}' "; ?> |
PHP4 beschikt niet over een native XML-parser. En dan gaat mijn voorkeur uit naar een oplossing waarbij de volgorde van de elementen binnen een item (dus id en titel binnen bedrijf) niet relevant is boven een oplossing waarbij de volgorde vast is.quote:Op dinsdag 23 mei 2006 11:26 schreef JeRa het volgende:
[..]
De manier van Roönaän gaat ook op zijn bek als er grote wijzigingen worden doorgevoerd. Het beste is nog altijd om een XML-parser te gebruiken
Dát is natuurlijk helemaal waar. Ikzelf werk alleen in PHP5 en draai zo nu en dan PHP-cvs, dan denk je daar niet eens meer over naquote:Op dinsdag 23 mei 2006 18:37 schreef Light het volgende:
[..]
PHP4 beschikt niet over een native XML-parser.
quote:Op dinsdag 23 mei 2006 18:33 schreef c0nd0r het volgende:
Heb je ook de foutmelding?
En iets minder layout verneukende code
quote:Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/home/jeroen/www/test/chat.php on line 154
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'emoticons/tongue.gif'> ', 2, '2006-05-23 18:16:03', '62.251.120.197')' at line 1
Het is een string, maar dat werkte eerst wel. Alleen de samenstelling van $bericht is verandert...quote:Op dinsdag 23 mei 2006 18:34 schreef JeRa het volgende:
@LeeHarveyOswald
Userid is hopelijk toch geen string? Geen quotes eromheen dan
Verder kun je dat oplossen door ' bericht = \'' . addslashes($bericht) . '\' te gebruiken.
mysql_real_escape_stringquote:Op dinsdag 23 mei 2006 18:34 schreef JeRa het volgende:
@LeeHarveyOswald
Userid is hopelijk toch geen string? Geen quotes eromheen dan
Verder kun je dat oplossen door ' bericht = \'' . addslashes($bericht) . '\' te gebruiken.
beterquote:
is het niet dat magic quotes aan staan, en dat op bericht na alle gegevens ook al uit de databse worden gehaald, en dus niet dmv user veldquote:Op dinsdag 23 mei 2006 19:07 schreef DionysuZ het volgende:
dat is toch precies hoe sql injecties werken? als je een variabele $test = "bla' or '1'='1"; hebt die je gebruikt in een sql query: "SELECT * FROM test WHERE veld = '{$test}'"; dan heb je toch gewoon een succesvolle manier van sql injectie? addslashes dus
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | php include("config.php"); //error_reporting(E_ALL); php $i = '0'; $sql = 'SELECT * FROM `occasions` ORDER BY `ID` ASC'; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)) { if($i / 2 == round($i / 2)) { $class = 'occasions_wrapper_even'; } else { $class = 'occasions_wrapper_oneven'; } $specificaties = nl2br($row['specificaties']); $specificaties = nl2br($row['specificaties']); $occasions = $occasions." <div class='occasions_wrapper'> <table> <tr> <td colspan='4' onClick='showEigenschappen(".$row[id].")'>Meer info</td> </tr> <tr> <td width='120' rowspan='2' ><img src='thumbs/".$row[foto]."' > <img src='thumbs/".$row[foto]."' width='50px' height='50px' > <img src='thumbs/".$row[foto]."' width='50px' height='50px' ></td> <td class='occasions_info'> Merk: <br /> Type: <br /> Kilometerstand: <br /> Vraagprijs: <br /> </td> <td class='occasions_inhoud'> $merk <br /> ".$row['type']." <br /> ".$row['kilometerstand']." <br /> € <font class='prijs'>".$row['vraagprijs'].",-</font> <br /> </td> <td class='occasions_info' valign='top'> Kleur: <br /> Brandstof: <br /> Bouwjaar: <br /> </td> <td class='occasions_inhoud'> ".$row['kleur']." <br /> ".$row['brandstof']." <br /> ".$row['bouwjaar']." <br /> </td> </tr> <tr> <td colspan='4' align='left' valign='top'><div class='specs_hidden' id='occasion$i' ><br /><p><b>Eigenschappen:</b></p><p>$specificaties</p></div></td> </tr> <tr> <td colspan='4'>bewerken | verwijderen | foto-toevoegen</td> </tr> </table> </div> <br /> "; $i++; } php $dag = date(D); $body = " <div class='MAIN_WRAPPER'> <div class='TOP'></div> <div class='TOP_SPLITTER'></div> <div class='MAIN'> <div class='TOP_CONTENT'></div> <div class='CONTENT'> <div class='CONTENT_TITEL'><p> </p><p><img src='site_images/plus.gif' alt=''/> occasion overzicht</p></div> <div class='CONTENT_TEXT'> $occasions </div> <div class='CONTENT_BOTTOM'>blaap.nl</div> <p> </p> </div> </div> <div class='BOTTOM'></div> </div> "; <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link href="sessie.css" type="text/css" rel="stylesheet" /> <script language="javascript"> var i = 0; function showEigenschappen(nummer) { document.getElementById('occasion'+nummer).display = 'block'; } </script> </head> <body> php echo"$body"; </body> </html> ?> |
Ook hier weer, als je een écht complete oplossing wilt dan kun je beter met prepared statements werkenquote:
1 2 3 4 5 6 7 8 9 | $db = new PDO('mysql:host=server;dbname=database', 'user', 'pw'); $query = 'SELECT COUNT(id) AS num FROM tabel WHERE bericht = :bericht'; $stmt = $db->prepare($sql); $stmt->bindParam(':bericht', $bericht); $stmt->execute(); ?> |
'Je mag ook berichten met inhoud plaatsen hoor <img src = 'emoticons/tongue.gif'> 'quote:Op dinsdag 23 mei 2006 18:32 schreef LeeHarveyOswald het volgende:
Ik zit weer eens met een probleem...![]()
de volgende query levert problemen op:
[ code verwijderd ]
Iemand een idee wat er mis gaat? Tq:)
Dit deel heb ik nu werkend, alleen nu krijg ik:quote:Op dinsdag 23 mei 2006 19:47 schreef CraZaay het volgende:
[..]
'Je mag ook berichten met inhoud plaatsen hoor <img src = 'emoticons/tongue.gif'> '
Wat dacht je van het escapen van de single quotes in je string?
1 2 3 4 5 6 7 8 9 10 11 12 13 | $sql_query = "SELECT bericht FROM slowchat WHERE userid={$MemCookID} and bericht = {$bericht} and datumtijd >={$uurnu} "; $result = mysql_query($sql_query); if(mysql_num_rows($result) > 0) { // AFBREKEN! Echo "Anti Flood! je kan niet snel achter elkaar 2x hetzelfde bericht plaatsen! "; } ?> |
Waar precies?quote:Op dinsdag 23 mei 2006 19:59 schreef JeRa het volgende:
LHO, je moet nog quotes om je {$bericht} heen zetten
quote:Op dinsdag 23 mei 2006 20:07 schreef LeeHarveyOswald het volgende:
[..]
Waar precies?![]()
In mn vorige post staan ze nl. al...
1 |
1 |
Dat ziet er wel flink omslachtig uitquote:Op dinsdag 23 mei 2006 19:47 schreef JeRa het volgende:
[..]
Ook hier weer, als je een écht complete oplossing wilt dan kun je beter met prepared statements werken
[ code verwijderd ]
Dit houdt rekening met dat $bericht een string is en escapet de string, afhankelijk van de gebruikte connection character set met de MySQL-database
En nee, PDO is niet altijd beschikbaar(maar sinds PHP5 wel, mits geladen)
aangepast, maakt geen verschil. Result blijft trouwens leeg..quote:Op dinsdag 23 mei 2006 20:16 schreef JeRa het volgende:
[..]
[ code verwijderd ]
Dáár
[ code verwijderd ]
Is het ook wel op het eerste gezicht. Maar het zorgt ervoor dat je nooit ende nimmer meer SQL injections kunt creëerenquote:
Qua marktverhouding ligt 5 inmiddels rond de 30% en groeiende toch?quote:Op dinsdag 23 mei 2006 18:44 schreef JeRa het volgende:
[..]
Dát is natuurlijk helemaal waar. Ikzelf werk alleen in PHP5 en draai zo nu en dan PHP-cvs, dan denk je daar niet eens meer over na
Als je een query naar de server stuurt moet dat via de MySQL-backend voor PHP via een verbinding naar de MySQL-server, alwaar hij ingelezen, verwerkt en geoptimaliseert moet wordenquote:Op dinsdag 23 mei 2006 20:59 schreef fokME2 het volgende:
@JeRa hoe bedoel je al het parsewerk maar één keer uit te laten voeren?
Klopt ongeveer ja, een hoop webhosters zweren nog bij PHP4 omdat de klanten dat vaak ook nog doenquote:Op dinsdag 23 mei 2006 20:59 schreef Roönaän het volgende:
[..]
Qua marktverhouding ligt 5 inmiddels rond de 30% en groeiende toch?
Mogelijkerwijs ook omdat de "extra software" die ze aanbieden php4 zijn; plesk, phpnuke, phpbb, mambo. Maar dat zal met de tijd ook wel veranderen.quote:Op dinsdag 23 mei 2006 21:07 schreef JeRa het volgende:
Klopt ongeveer ja, een hoop webhosters zweren nog bij PHP4 omdat de klanten dat vaak ook nog doen
Ik wacht even af wat mijn hoster meldt over PHP5 support.quote:Op dinsdag 23 mei 2006 21:07 schreef JeRa het volgende:
[..]
Klopt ongeveer ja, een hoop webhosters zweren nog bij PHP4 omdat de klanten dat vaak ook nog doen
Ze kunnen best php4 en php5 naast elkaar draaien. En daarbij moeten ze geen phpbb aanbieden.quote:Op dinsdag 23 mei 2006 21:11 schreef Roönaän het volgende:
[..]
Mogelijkerwijs ook omdat de "extra software" die ze aanbieden php4 zijn; plesk, phpnuke, phpbb, mambo. Maar dat zal met de tijd ook wel veranderen.
Dat klinkt interessantquote:Het gaat leuk worden als zend framework geïntegreerd wordt bij de hosters en dat ik bij een webhoster via plesk mijn emailadres+gsm op kan geven waarnaar zend framework sms't en mailt over trage queries en stervende websites
Maar tot die tijd kun je toch al genoeg met PHP5 experimenteren, toch?quote:Op dinsdag 23 mei 2006 21:38 schreef Light het volgende:
[..]
Ik wacht even af wat mijn hoster meldt over PHP5 support.
Niet als Apache-module, dan moeten ze met mod_php4 en php5-cgi of iets in die richting gaan werken. En dat is qua opzet vaak niet echt wenselijk.quote:Op dinsdag 23 mei 2006 21:41 schreef Light het volgende:
[..]
Ze kunnen best php4 en php5 naast elkaar draaien.
Leek me ook, de meeste hosters doen aan mass hosting en dan wil je niet nog eens alle queries en websites monitoren, in het kader van performancequote:[..]
Dat klinkt interessantMaar dan kun je ook colocation overwegen natuurlijk.
True, maar dan is het nog niet inzetbaar op een sitequote:Op dinsdag 23 mei 2006 21:55 schreef JeRa het volgende:
[..]
Maar tot die tijd kun je toch al genoeg met PHP5 experimenteren, toch?
1 als apache module, de ander als cgi. Dat kan goed.quote:Niet als Apache-module, dan moeten ze met mod_php4 en php5-cgi of iets in die richting gaan werken. En dat is qua opzet vaak niet echt wenselijk.
quote:Op dinsdag 23 mei 2006 22:53 schreef Swetsenegger het volgende:
Al mijn hosters draaien nog op php4.
Kan ik bij de overgang van 4 naar 5 problemen verwachten bij gewone procedurele code?
Zoals ondertussen duidelijk mag zijn gebruiken mijn brouwsels geen OOP en de grootste wijzigen tussen 4 en 5 zijn toch OOP gerelateerd?
In de tijd dat ik bij mijn hoster nog geen PHP5 had, schreef ik al mijn sites alsnog in PHP5 en classes die de functionaliteit van PHP5 nabootsten in PHP4 die ik dan mee uploadde naar de hosterquote:Op dinsdag 23 mei 2006 22:14 schreef Light het volgende:
[..]
True, maar dan is het nog niet inzetbaar op een siteNiet dat ik nu wel iets serieus heb draaien, maar goed.
De CGI moet dan vaak gedraaid worden onder de rechten van de gebruiker, de module draait vaak onder de Apache-gebruiker. Vaak levert dat gezeik op met de bestanden, veiligheid op de server, etc. Meestal is het zo dat de hoster er tegen die tijd er al van afzietquote:[..]
1 als apache module, de ander als cgi. Dat kan goed.
Das helemaal niet leuk, want dan wordt je geacht opeens midden in de nacht wanneer er een aantal zware crons gaan draaien je aan optimalisatie gaat werkenquote:Op dinsdag 23 mei 2006 21:11 schreef Roönaän het volgende:
Het gaat leuk worden als zend framework geïntegreerd wordt bij de hosters en dat ik bij een webhoster via plesk mijn emailadres+gsm op kan geven waarnaar zend framework sms't en mailt over trage queries en stervende websites
Ja ik begrijp dat absolute functies niet meer werken, maar dat zijn er toch niet zo gek veel wanneer er geen OOP gebruikt wordt?quote:Op dinsdag 23 mei 2006 22:55 schreef c0nd0r het volgende:
[..]
Je moet bij PHP 5 wel aangeven dat ie dan backwards compatible is en sommige functies reageren anders of zijn er gewoon uit!
Raadpleeg ook even PHP manual hier staat het precies in!
Als het goed is niet neequote:Op dinsdag 23 mei 2006 22:59 schreef Swetsenegger het volgende:
[..]
Ja ik begrijp dat absolute functies niet meer werken, maar dat zijn er toch niet zo gek veel wanneer er geen OOP gebruikt wordt?
Dat dacht ik ook. Ik weet dat het OOP model aardig op de schop gegaan is (dus maar goed dat ik er nog niet aan begonnen benquote:
http://www.zend.com/php5/articles/engine2-php5-changes.phpquote:Op dinsdag 23 mei 2006 23:03 schreef Swetsenegger het volgende:
[..]
Dat dacht ik ook. Ik weet dat het OOP model aardig op de schop gegaan is (dus maar goed dat ik er nog niet aan begonnen ben) Is er op php.net een lijstje te vinden met de verschillen tussen 4 en 5?
Ik zoek me het lazurus op 'migration' enzo, maar vind niet echt wat ik zoek
PHP Platform, wat ik eerder PHP framework noemde.quote:Op woensdag 24 mei 2006 09:04 schreef Swetsenegger het volgende:
[..]
Hee cool
Is dat onderdeel van php5
A, ik begreep 'framework' al niet, omdat ik dat meer als ontwikkelomgeving interpreteerde nav het beta framework.quote:Op woensdag 24 mei 2006 09:16 schreef Roönaän het volgende:
[..]
PHP Platform, wat ik eerder PHP framework noemde.
Die monitort vanuit de php engine al je meuk. Dus dit is in pincipe ook nuttig voor grote hosters. Juist dáar wil je je scriptkiddies kunnen aanspreken op hun brakke queries.
framework was in het begin (voordat het platform heette) een combinatie van dat monitoren + zend optimizer + zend safecode (of hoe dat ding heet) en nog wat serverside tools.quote:Op woensdag 24 mei 2006 10:46 schreef Swetsenegger het volgende:
[..]
A, ik begreep 'framework' al niet, omdat ik dat meer als ontwikkelomgeving interpreteerde nav het beta framework.
werkt ook niet..quote:Op dinsdag 23 mei 2006 19:32 schreef DionysuZ het volgende:
het is document.getElementById('occasion'+nummer).style.display = 'block'en jah het is javascript
quote:Op woensdag 24 mei 2006 16:54 schreef Nevermind het volgende:
Klein vraagje: Hoe kan ik de totale grootte van een MySQL database (in kb) verkrijgen?
1 |
Hoop bruikbare informatiequote:Op woensdag 24 mei 2006 17:07 schreef JeRa het volgende:
[..]
[ code verwijderd ]
En dan wat dingetjes gaan optellen
Data_Lengh + Index_Length + Data_Free is het totale verbruik van een tabelquote:Op woensdag 24 mei 2006 17:13 schreef Nevermind het volgende:
[..]
Hoop bruikbare informatie
Data_Length + Index_Length is het totale verbruik lijkt me?
Super! Bedankt voor de informatiequote:Op woensdag 24 mei 2006 17:16 schreef JeRa het volgende:
[..]
Data_Lengh + Index_Length + Data_Free is het totale verbruik van een tabel
Data_Length = aantal bytes in gebruik door data
Index_Length = aantal bytes in gebruik door indices
Data_Free = aantal bytes dat niet gebruikt wordt door de tabel, maar wel ingenomen is op de harde schijf
1 |
1 2 3 4 5 6 7 8 | $x=file_get_contents($bestand); unlink($bestand); $h=fopen($bestand,"a"); fwrite($h,$x); fclose($h); unset($x); ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |