quote:Op dinsdag 29 januari 2008 12:51 schreef JortK het volgende:
Hoeveel trager dan?
Ik werk op echt grote omgevingen (MSSQL) maar daar merk ik het echt niet
Wat ik wel merk in performance is of je je joins left in de WHERE of in de FROM
Als je een tabel een of meerdere keren met zichzelf joint dan ontkom je natuurlijk niet aan aliassen... dat het performance kost wist ik ook niet eigenlijk.quote:Op dinsdag 29 januari 2008 11:53 schreef Chandler het volgende:
[..]
Dat wist ik ook nietweer wat geleerd, vind zo ie zo dat aliassen vies zijn, het is imho duidelijker om gewoon de gehele tabelnaam te gebruiken, weet je gelijk wat waar voor dient!
Dat klopt maar als je een tabel meerdere keren koppelt doe je imho iets foutquote:Op dinsdag 29 januari 2008 13:03 schreef Farenji het volgende:
[..]
Als je een tabel een of meerdere keren met zichzelf joint dan ontkom je natuurlijk niet aan aliassen... dat het performance kost wist ik ook niet eigenlijk.
Nee hoor hoeft absoluut nietquote:Op dinsdag 29 januari 2008 13:13 schreef Chandler het volgende:
[..]
Dat klopt maar als je een tabel meerdere keren koppelt doe je imho iets fout
Nee hoor.. in sommige situaties is dat noodzakelijk. Als je met parent_id's werkt bijvoorbeeld.quote:Op dinsdag 29 januari 2008 13:13 schreef Chandler het volgende:
[..]
Dat klopt maar als je een tabel meerdere keren koppelt doe je imho iets fout
Geef eens een voorbeeldquote:
Als jij dat wilt ;)quote:
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 | FROM TBL_MPM LEFT OUTER JOIN TBL_MPM AS TBL_MPM_009 ON TBL_MPM_009.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_009.MPM_TAB='A' AND TBL_MPM_009.MPM_FIELD='009' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_011 ON TBL_MPM_011.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_011.MPM_TAB='A' AND TBL_MPM_011.MPM_FIELD='011' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_016 ON TBL_MPM_016.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_016.MPM_TAB='A' AND TBL_MPM_016.MPM_FIELD='016' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_019 ON TBL_MPM_019.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_019.MPM_TAB='A' AND TBL_MPM_019.MPM_FIELD='019' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_022 ON TBL_MPM_022.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_022.MPM_TAB='A' AND TBL_MPM_022.MPM_FIELD='022' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_023 ON TBL_MPM_023.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_023.MPM_TAB='A' AND TBL_MPM_023.MPM_FIELD='023' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_027 ON TBL_MPM_027.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_027.MPM_TAB='A' AND TBL_MPM_027.MPM_FIELD='027' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_028 ON TBL_MPM_028.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_028.MPM_TAB='A' AND TBL_MPM_028.MPM_FIELD='028' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_032 ON TBL_MPM_032.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_032.MPM_TAB='A' AND TBL_MPM_032.MPM_FIELD='032' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_033 ON TBL_MPM_033.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_033.MPM_TAB='A' AND TBL_MPM_033.MPM_FIELD='033' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_038 ON TBL_MPM_038.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_038.MPM_TAB='A' AND TBL_MPM_038.MPM_FIELD='038' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_039 ON TBL_MPM_039.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_039.MPM_TAB='A' AND TBL_MPM_039.MPM_FIELD='039' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_040 ON TBL_MPM_040.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_040.MPM_TAB='A' AND TBL_MPM_040.MPM_FIELD='040' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_041 ON TBL_MPM_041.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_041.MPM_TAB='A' AND TBL_MPM_041.MPM_FIELD='041' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_037 ON TBL_MPM_037.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_037.MPM_TAB='A' AND TBL_MPM_037.MPM_FIELD='037' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_042 ON TBL_MPM_042.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_042.MPM_TAB='A' AND TBL_MPM_042.MPM_FIELD='042' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_044 ON TBL_MPM_044.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_044.MPM_TAB='A' AND TBL_MPM_044.MPM_FIELD='044' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_045 ON TBL_MPM_045.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_045.MPM_TAB='A' AND TBL_MPM_045.MPM_FIELD='045' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_046 ON TBL_MPM_046.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_046.MPM_TAB='A' AND TBL_MPM_046.MPM_FIELD='046' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_047 ON TBL_MPM_047.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_047.MPM_TAB='A' AND TBL_MPM_047.MPM_FIELD='047' LEFT OUTER JOIN TBL_MPM AS TBL_MPM_048 ON TBL_MPM_048.MPM_PARENT_ID=TBL_MPM.MPM_ID AND TBL_MPM_048.MPM_TAB='A' AND TBL_MPM_048.MPM_FIELD='048' WHERE TBL_MPM.MPM_TAB='A' AND TBL_MPM.MPM_FIELD='GRD' |
dat kan met flush();quote:Op dinsdag 29 januari 2008 15:25 schreef Janteh het volgende:
Is het mogelijk om php output te laten sturen terwijl hij nog aan het parsen is? Ik heb een script wat heel lang moet draaien en ik zou graag willen dat ik de voortgang al op mn scherm krijg terwijl hij nog bezig is, of moet ik dan aan de cli gaan denken oid?
Daar sta ik ook van te kijken eigenlijk.... ik maak meestal standaard een alias, eens een benchmarkje maken om te kijken hoeveel het scheeltquote:Op dinsdag 29 januari 2008 13:03 schreef Farenji het volgende:
Als je een tabel een of meerdere keren met zichzelf joint dan ontkom je natuurlijk niet aan aliassen... dat het performance kost wist ik ook niet eigenlijk.
Laat je de uitkomsten weten?quote:Op dinsdag 29 januari 2008 15:56 schreef Xcalibur het volgende:
[..]
Daar sta ik ook van te kijken eigenlijk.... ik maak meestal standaard een alias, eens een benchmarkje maken om te kijken hoeveel het scheelt
Please post the resultsquote:Op dinsdag 29 januari 2008 15:56 schreef Xcalibur het volgende:
[..]
Daar sta ik ook van te kijken eigenlijk.... ik maak meestal standaard een alias, eens een benchmarkje maken om te kijken hoeveel het scheelt
Ja heel leuk, maar niet echt praktijk gericht volgens mij :)quote:Op dinsdag 29 januari 2008 19:41 schreef Xcalibur het volgende:
Ik maak eigenlijk nooit benchmarks, dus ik hoop dat ik een beetje iets zinnigs geproduceerd heb :P
- Tabel met bijna 3940 records
- Query 1: SELECT * FROM clients
- Query 2: SELECT * FROM clients AS clients
- Loop waarin de query 100x uitgevoerd wordt
- PHP microtime die de tijd registreert voor en na de loop
Gemiddelde resultaat over 10 metingen zonder alias: 10,82319 seconden
Gemiddelde resultaat over 10 metingen met alias: 11,13025 seconden
Verschil over 1000 queriesl: 2,83% trager met alias
Dit is natuurlijk een zeer beperkt aantal queries wat ik gedraaid heb, maar ik denk wel dat het redelijk betrouwbaar is... Met alias is iets trager, maar ik denk dat je het op een per-query basis echt niet gaat merken, tenzij je echt veel bezoekers op je site hebt :)
1 |
21 velden per rijquote:Op dinsdag 29 januari 2008 19:46 schreef JortK het volgende:
Hoeveel velden bevat die tabel?
Geen hond. 1 query duurt alleen maar 0,0001 seconde, en dan wordt het verschil zo lastig te maken....quote:Op dinsdag 29 januari 2008 19:46 schreef JortK het volgende:
En wie draait in één script 1000 queries
5.2.5.quote:Op dinsdag 29 januari 2008 20:43 schreef Farenji het volgende:
Klinkt als een geheugenlek. Welke php versie gebruik je?
ongetwijfeld, maar dat zijn andere functies voor dit doeleinde ook niet.quote:Op dinsdag 29 januari 2008 21:26 schreef ralfie het volgende:
In principe wel, maar 300 paginas ophalen met curl is misschien niet iets waar het voor gemaakt is...
je kunt wat kloten met memory_get_usage(), misschien geeft het wat aanwijzingen over waar het fout gaat
Post je script eens?quote:Op dinsdag 29 januari 2008 21:42 schreef Janteh het volgende:
[..]
ongetwijfeld, maar dat zijn andere functies voor dit doeleinde ook niet.
Met memory_get_usage() zie ik heel mooi dat na elk rondje er ongeveer 10 kb bijkomt, wat precies de grootte van de pagina is.
1 |
In mn CSS file staatquote:<td width="100%" valign="top" class="body_outer">
<?php if (mosCountModules('banner')) { ?>
<div class="banner_inner"><?php mosLoadModules( 'banner', 1 ); ?></div>
<?php } ?>
<?php if ( $user1 > 0 ) {?>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="content_table">
<?php
if ($colspan > 0) {
?>
<tr valign="top">
<?php
if ( $user1 > 0 ) {
?>
<td width="50%">
<div class="user1_inner">
<?php mosLoadModules ( 'user1' ); ?>
</div>
</td>
Hoe kan ik het aanpassen zodat het plaatje gecentreerd staat?quote:#banner_inner {
float: left;
padding: 0px;
height: 70px;
border: 1px solid #FCFCFC;
1 2 3 | sprintf('%01.2f', $variable) ?> |
number_format($getal, 2);quote:Op woensdag 30 januari 2008 11:47 schreef Geqxon het volgende:
Afaik kan dat alleen als string. Mijn tip: Schrijf het als echte integer naar de database, en voeg die 00 (str_pad?) er in de presentatie-laag pas aan toe.
Waar moet ik dat omheen zetten? om mijn hele lus?(Met tabel en alles erbij)quote:Op woensdag 30 januari 2008 13:05 schreef Dreammaster het volgende:
je gooit het met htmlspecialchars(); in de database? dan moet je bij het uitlezen htmlspecialchars_decode(); gebruiken
quote:Op woensdag 30 januari 2008 13:11 schreef Dreammaster het volgende:
in de variabele waar je html in staat... maar ik zie het nut niet echt om iets met htmlspecialchars in de database te zetten om het vervolgens weer de decoden...
1 2 3 4 5 6 7 8 9 | $_POST['name'] = htmlspecialchars($_POST['name']); $_POST['message'] = addslashes($_POST['message']); $_POST['message'] = htmlspecialchars($_POST['message']); if($_POST['name'] && $_POST['message']){ $query = "INSERT INTO reacties(naam, bericht, getID) VALUES ('$_POST[name]', '$_POST[message]', '$_GET[id]')"; mysql_query($query); } |
1 2 3 | $_POST['name'] = mysql_real_escape_string($_POST['name']); ?> |
1 2 3 4 5 6 7 8 9 | $name = $_POST['name']; $message = $_POST['message']; if(is_string($name) && is_string($message) { $query = "INSERT INTO reacties(naam, bericht, getID) VALUES ('" . mysql_real_escape_string($name) . "' , '" . mysql_real_escape_string($message) . "', '$_GET[id]')"; mysql_query($query); } ?> |
1 2 3 4 5 6 7 | $sql = sprintf( "INSERT INTO reacties (naam, bericht, getID) VALUES ('%s', '%s', %d)", mysql_real_escape_string($name), mysql_real_escape_string($message), $_GET['id'] ); mysql_query($sql); ?> |
Dankje, ik probeer het even.quote:
Afaik omsluiten de haakjes een collectie van karakters en tekens van wat er voor mag komen.quote:Op woensdag 30 januari 2008 14:59 schreef Litso het volgende:
[..]
Dankje, ik probeer het even.
Kan je ook uitleggen waarom? Klopt het dat je binnen de [haakjes] staat wat er wél mag? Wat doen dan de slashes en bv. die plus buiten de haakjes, ook in het origineel?
Iemand nog een idee voor dit "probleem"?quote:Op woensdag 30 januari 2008 09:12 schreef -J-D- het volgende:
Op http://85.92.147.131/~obcreunie/ ben ik bezig met het maken van een site in Joomla. Normaal gesproken is het in Joomla niet erg als je van PHP weinig afweet, aangezien er een mooi CMS omheen zit, maar ik heb het nu even nodig.
Op die site je het logo van "Over Betuwe College" in beeld staan. Deze probeer ik te centreren.
Volgens mij wordt deze banner geladen vanuit dit stukje:
[..]
In mn CSS file staat
[..]
Hoe kan ik het aanpassen zodat het plaatje gecentreerd staat?
Niet echt een probleem die hier thuis hoort, aangezien het gaat over css en html. Iig kan je wat proberen met die float:left; maar dat is moeilijk zeggen aangezien niet de gehele code duidelijk is.quote:Op woensdag 30 januari 2008 18:08 schreef -J-D- het volgende:
Iemand nog een idee voor dit "probleem"?
Leer gewoon aan om altijd placeholders te gebruiken voor je sql query argumenten, dat heeft php afgekeken van perl maar met een goede reden. Het is veel beter (en efficienter, als je dezelfde query vaker gebruikt) dan dat ranzige gehack met dat ge-escape enzo want sql injection wordt er automatisch onmogelijk door gemaakt zonder dat je daar zelf nog over in hoeft te zitten.quote:Op woensdag 30 januari 2008 14:17 schreef Geqxon het volgende:
Escapen in de query is persoonlije voorkeur, zelf vind ik het mooier om in een sprintf constructie te werken.
Of gebruik PDO.quote:Op donderdag 31 januari 2008 09:08 schreef Farenji het volgende:
[..]
Leer gewoon aan om altijd placeholders te gebruiken voor je sql query argumenten, [...]
http://www.marksiedle.com/show_article.php?cat=3&id=11
Hmm, ik begrijp niet wat je bedoelt?quote:Op donderdag 31 januari 2008 13:18 schreef Geqxon het volgende:
Binair het verschil tussen oud en nieuw bekijken, en dat in de database wegschrijven? Een tabel genaamd "History" oid?
Dit is interessantquote:Op donderdag 31 januari 2008 09:08 schreef Farenji het volgende:
[..]
Leer gewoon aan om altijd placeholders te gebruiken voor je sql query argumenten, dat heeft php afgekeken van perl maar met een goede reden. Het is veel beter (en efficienter, als je dezelfde query vaker gebruikt) dan dat ranzige gehack met dat ge-escape enzo want sql injection wordt er automatisch onmogelijk door gemaakt zonder dat je daar zelf nog over in hoeft te zitten.
http://www.marksiedle.com/show_article.php?cat=3&id=11
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 | ; ; Generated on 2008-01-31 at 15:22:08 ; ; Size: 620 bytes, Creation date: 2006-03-15 14:34:33, Modification date: 2006-03-15 14:34:33 e59d318ae34e9190f51e10544d17ab9a *POTWDVD019 - Rock Aid America - The Making of Smoke On The Water.md5 ; Size: 2021 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 14:34:34 a9417892c908eef3c573220b6a24c3bf *POTWDVD019.txt ; Size: 14309 bytes, Creation date: 2006-03-15 14:34:08, Modification date: 2006-03-15 14:34:09 65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.BUP ; Size: 26597 bytes, Creation date: 2006-03-15 14:34:10, Modification date: 2006-03-15 14:34:11 65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.IFO ; Size: 73701 bytes, Creation date: 2006-03-15 14:34:12, Modification date: 2006-03-15 14:34:12 196d82e1f7afacc6ea4f4a1caa0dbc2f *VIDEO_TS\VIDEO_TS.VOB ; Size: 114661 bytes, Creation date: 2006-03-15 14:34:13, Modification date: 2006-03-15 14:34:19 f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.BUP ; Size: 155621 bytes, Creation date: 2006-03-15 14:34:20, Modification date: 2006-03-15 14:34:23 f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.IFO ; Size: 10924005 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 15:24:07 5defea3427c04218c81dff47ee69f1a0 *VIDEO_TS\VTS_01_0.VOB ; Size: 1083848677 bytes, Creation date: 2006-03-15 15:24:08, Modification date: 2006-03-28 03:14:40 72b9c827ec29e43ce356b8733e5e2957 *VIDEO_TS\VTS_01_1.VOB ; Size: 2156382181 bytes, Creation date: 2006-04-02 13:17:52, Modification date: 2006-04-18 10:15:47 d1db84986d126e5838f167bd52e3be56 *VIDEO_TS\VTS_01_2.VOB ; Size: 3229100005 bytes, Creation date: 2006-04-03 14:09:27, Modification date: 2006-04-16 17:39:54 48e67b2589ddc5e60ef2e156d4e23b0b *VIDEO_TS\VTS_01_3.VOB ; Size: 3329441765 bytes, Creation date: 2006-04-08 06:02:52, Modification date: 2006-04-08 08:19:34 c308f264d32ff5b645e9b9485e7b34c1 *VIDEO_TS\VTS_01_4.VOB |
1 2 3 4 5 6 7 8 9 10 11 | 65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.BUP 65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.IFO 196d82e1f7afacc6ea4f4a1caa0dbc2f *VIDEO_TS\VIDEO_TS.VOB f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.BUP f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.IFO 5defea3427c04218c81dff47ee69f1a0 *VIDEO_TS\VTS_01_0.VOB 72b9c827ec29e43ce356b8733e5e2957 *VIDEO_TS\VTS_01_1.VOB d1db84986d126e5838f167bd52e3be56 *VIDEO_TS\VTS_01_2.VOB 48e67b2589ddc5e60ef2e156d4e23b0b *VIDEO_TS\VTS_01_3.VOB c308f264d32ff5b645e9b9485e7b34c1 *VIDEO_TS\VTS_01_4.VOB |
1 2 3 | filename (uit /md5/.txt) hash (uit /md5/.txt) |
1 |
werkt dat ook met upload?quote:Op donderdag 31 januari 2008 16:44 schreef Farenji het volgende:
- de tekst per regel inlezen
helaas niet echtquote:- als de regel met een ; begint: skippen
- met een regexp de md5 hash en de filename eruitfilteren:
Ongetest:
/^([a-f0-9]{32})/ voor de md5 (het gaat om het gedeelte tussen haakjes)
/\*(.*)$/ voor de filename
De md5 hashcode is (per definitie!) uniek voor een bestand dus die kun je als key gebruiken in je database.
quote:In 2007 is het een groep wetenschappers gelukt om twaalf verschillende PDF-bestanden te maken met dezelfde hashcode. De auteurs hebben daarmee aangetoond dat MD5 beter niet meer gebruikt kan worden als een verificatiemethode.
LIMIT 1?quote:Op donderdag 31 januari 2008 16:42 schreef Timens het volgende:
wederom een klein vraagje:
Weten jullie hoe ik 1 enkele array kan verwijderen uit een tabel?
[ code verwijderd ]
Die query, maar ik wil dus dat de andere arrays met zelfde ID blijven staan, behalve diegene die ik delete..
Ik wil dus niet dat heel homeID 1 verdwijnt, alleen een stukje daarvan...
edit:
$id is een $_GET
het is een DELETE niet een SELECT...?quote:
Als je echt zekerheid wil hebben dat het uniek is moet je een SHA1 hash gebruiken.quote:Op donderdag 31 januari 2008 16:57 schreef qu63 het volgende:
Maar in mijn geval zijn de bestanden uniek genoeg
Opgelost via Fabrik.quote:Op woensdag 30 januari 2008 18:57 schreef -J-D- het volgende:
Ok, dat ga ik proberen.
Andere vraag waar google me nog heeft kunnen helpen:
Hoe benader ik vanuit Joomla een tabel uit de mysql-database? Ik weet de code, dat is het probleem niet. Maar waar in Joomla laat ik die opdracht achter zodat die tabel op een pagina verschijnt?
de kans dat een VTS_01_0.VOB van 0,99 GB van een andere film dezelfde hash heeft lijkt mij vrij kleinquote:Op donderdag 31 januari 2008 17:24 schreef Farenji het volgende:
[..]
Als je echt zekerheid wil hebben dat het uniek is moet je een SHA1 hash gebruiken.
LIMIT 1 werkt ook bij DELETE en lijkt mij ook de juiste oplossing voor jouw vraagquote:Op donderdag 31 januari 2008 17:03 schreef Timens het volgende:
[..]
het is een DELETE niet een SELECT...?
Is er iets anders unieks dat bepaalt welke (van de tig) dingen met homeID=1 weg moet en welke moet blijven staan?quote:Op donderdag 31 januari 2008 16:42 schreef Timens het volgende:
wederom een klein vraagje:
Weten jullie hoe ik 1 enkele array kan verwijderen uit een tabel?
[ code verwijderd ]
Die query, maar ik wil dus dat de andere arrays met zelfde ID blijven staan, behalve diegene die ik delete..
Ik wil dus niet dat heel homeID 1 verdwijnt, alleen een stukje daarvan...
Met LIMIT 1 weet je niet welk item je verwijdert. Als je 1 item wilt verwijderen is het beter om een unique key (of primary key) te gebruiken om de rij te identificeren. Dan heb je echt iets unieks.quote:Op donderdag 31 januari 2008 18:40 schreef Dreammaster het volgende:
[..]
LIMIT 1 werkt ook bij DELETE en lijkt mij ook de juiste oplossing voor jouw vraag
Ook daar zijn collisions gevonden. En met hashes ontkom je niet aan collisions of dubbelen. MD5 is 128 bit, SHA-1 is 160 bit. Er zijn veel meer dan 2160 bestanden en mogelijkheden. Anders kunnen we pas echt ruimte besparen. Complete DVD's (4GB) in 160 bits, leuke compressiequote:Op donderdag 31 januari 2008 17:24 schreef Farenji het volgende:
[..]
Als je echt zekerheid wil hebben dat het uniek is moet je een SHA1 hash gebruiken.
jammer dat je em niet kunt omdraaien omdat je een flink deel van de info weggooit.... maar anders was het een mooie compressiemethode geweestquote:Op donderdag 31 januari 2008 19:15 schreef Light het volgende:
Anders kunnen we pas echt ruimte besparen. Complete DVD's (4GB) in 160 bits, leuke compressie
Weet je nog een andere voor wat grotere scriptsquote:Op vrijdag 1 februari 2008 01:25 schreef Geqxon het volgende:
Notepad 2? Does the trick op kleine scriptjes.
Hmmm....quote:Op vrijdag 1 februari 2008 01:50 schreef Geqxon het volgende:
Deze Notepad2 is het overigens, zo te zien zijn er meerdere.
Voor grotere projecten? Ondanks dat ik er persoonlijk 0,0 ervaring mee heb, een klasgenoot van mij gebruikt deze: http://www.mpsoftware.dk/
gPHPEdit. Werkt geweldig! Supersnelle check van je syntax en een highlighting voor php/javascript/html en nog vele anderen.quote:Op vrijdag 1 februari 2008 00:57 schreef Qunix het volgende:
Weet iemand hier een gratis fatsoenlijk PHP editor programma met highlight code?
Liefst met de volledige PHP library van PHP 5. (hoeft niet maar liever wel zoals dreamweaver van adobe ook heeft.)
Hij vraagt er toch om? Als in, letterlijk?quote:Op vrijdag 1 februari 2008 10:18 schreef SuperRembo het volgende:
He ja, laten we het hele topic weer eens volspammen met alle mogelijke texteditors
Die gebruik ik ook, die auto-completionquote:Op vrijdag 1 februari 2008 01:50 schreef Geqxon het volgende:
Deze Notepad2 is het overigens, zo te zien zijn er meerdere.
Voor grotere projecten? Ondanks dat ik er persoonlijk 0,0 ervaring mee heb, een klasgenoot van mij gebruikt deze: http://www.mpsoftware.dk/
Het is al zo vaak voorbij gekomen. Vaak wordt het niet veel meer dan een enorme opsomming van editors waar je niet veel wijzer van wordt. Er is ook een eigen topic voor: Welke editor voor PHP?quote:Op vrijdag 1 februari 2008 10:45 schreef Litso het volgende:
[..]
Hij vraagt er toch om? Als in, letterlijk?
Misschien is het handig om dat topic ook even in de OP te zettenquote:Op vrijdag 1 februari 2008 12:56 schreef SuperRembo het volgende:
[..]
Het is al zo vaak voorbij gekomen. Vaak wordt het niet veel meer dan een enorme opsomming van editors waar je niet veel wijzer van wordt. Er is ook een eigen topic voor: Welke editor voor PHP?
Gebruikersnaam, pass en db zijn goed ingevoerd.quote:<?php
mysql_connect("localhost", "gebruikersnaam", "pass");
mysql_select_db("db");
$res = mysql_query("SELECT * FROM jos_aanmeldingen");
mysql_free_result($res);
?>
Ik dacht hiermee een overzicht te maken van die tabel. Hij pakt alleen de laatste kolom niet.quote:$res = mysql_query("SELECT * FROM jos_aanmeldingen");
while ($row = mysql_fetch_assoc($res)) {
echo $row["Naam"];
echo $row["Adres"];
echo $row["Woonplaats"];
echo $row["Beginjaar"];
echo $row["Laatsejaar"];
}
mysql_free_result($res);
1 2 3 4 5 | function checkLogin($user = '', $pass = '', $group = 4, $goodRedirect = '', $badRedirect = '') { [code]...[/code] } ?> |
1 2 3 | if (!$classname->checkLogin(2) ){ header("Location: login.php"); die(); } ?> |
Ik neem aan dat je een group checked? dan zul je de eerste twee parameters moeten geven om php te laten merken dat die 2 bij de derde parameter hoortquote:Op zaterdag 2 februari 2008 22:07 schreef Tarabass het volgende:
Ik ben een oop-cms aan het bouwen en had wat voorbeeldjes gedownload omdat ik niet zo thuis ben in oop. Nou kwam ik het volgende tegen waar ik heel vreemd tegen aan kijk.
Ik heb een class die checkt of een user is ingelogd en wat zijn status is. In die class zit een functie die er zo uit ziet:
[ code verwijderd ]
}
?>
[/php]
Nu is één van de pagina's beveiligt en enkel te benaderen door een admin. Die beveiliging ziet er zo uit:
[ code verwijderd ]
Zoals je ziet komen de parameters bij het aanroepen van de functie in de class niet overeen, toch werkt het. Ik begrijp niet wat hier gebeurt en hoe het werkt. Kan iemand mij uitleggen wat hier gebeurt?
1 2 3 | if (!$classname->checkLogin('', '', 2) ){ header("Location: login.php"); die(); } ?> |
1 2 3 | if (!$classname->checkLogin(1) ){ header("Location: login.php"); die(); } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |