abonnement Unibet Coolblue Bitvavo
pi_150774686
quote:
5s.gif Op woensdag 18 maart 2015 14:40 schreef Tijn het volgende:

[..]

Dat is erg? :?
Je quote de halve zin, maar ook een notice bij een niet gedefinieerde variabele is echt een oplossing van niets. Of je geeft een exception / error of niet. Nu heb je dus afhankelijk van het niveau van error_reporting onverwachte bij-effecten. Het feit dat je dan weer met een @ operator die notice moet gaan onderdrukken maakt het nog erger.
Het is zoals ik al aangaf het gevolg van het feit dat PHP van scripttaaltje met een brakke globale scope is geëvolueerd tot iets wat op een volwaardige OO taal moet lijken, maar dat neemt niet weg dat het nou niet bepaald een wenselijke oplossing is.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  woensdag 18 maart 2015 @ 14:58:03 #202
12221 Tijn
Powered by MS Paint
pi_150775018
Natuurlijk heb je helemaal gelijk dat PHP geen doordacht design heeft en in de loop der jaren enorm uit de kluiten is gegroeid, zonder dat dat aanvankelijk voorzien was. Maar ik vind niet dat er wat betreft ongedefinieerde variabelen nou echt zoveel mis is.

Je zegt het zelf al: geef als taal een error of niet. Nou, in het geval van PHP is het antwoord duidelijk: het gebruik van een ongedefinieerde variabele is geen enkel probleem. Dat je er een notice over krijgt, is een poging van PHP om hun gebruikers een beetje op te voeden, dat is alles. Maar daar heeft toch niemand last van verder?
pi_150775875
quote:
14s.gif Op woensdag 18 maart 2015 14:58 schreef Tijn het volgende:
Natuurlijk heb je helemaal gelijk dat PHP geen doordacht design heeft en in de loop der jaren enorm uit de kluiten is gegroeid, zonder dat dat aanvankelijk voorzien was. Maar ik vind niet dat er wat betreft ongedefinieerde variabelen nou echt zoveel mis is.

Je zegt het zelf al: geef als taal een error of niet. Nou, in het geval van PHP is het antwoord duidelijk: het gebruik van een ongedefinieerde variabele is geen enkel probleem. Dat je er een notice over krijgt, is een poging van PHP om hun gebruikers een beetje op te voeden, dat is alles. Maar daar heeft toch niemand last van verder?
Van notices hebben mensen wel degelijk last. Zoals ik zeg is dat een bij-effect. Zeker wanneer mensen de code gebruiken in HTML, kunnen de gebruikers het te zien krijgen, wat doorgaans niet wenselijk is. Wanneer je met gecompileerde talen werkt zijn warnings / notices niet zo'n probleem. Prima te hanteren wanneer er bijvoorbeeld deprecated zaken worden gehanteerd. Runtime allerhande notices gaan uitspugen is nooit wenselijk.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  woensdag 18 maart 2015 @ 15:28:34 #204
12221 Tijn
Powered by MS Paint
pi_150776064
Gebruikers kunnen het alleen te zien krijgen als je display_errors aan hebt staan, wat je sowieso niet moet doen in een productieomgeving. Standaard is PHP niet zo geconfigureerd dat errors (laat staan notices) worden weergegeven, die worden alleen gelogd.
  donderdag 19 maart 2015 @ 09:26:26 #205
230788 n8n
Pragmatisch
pi_150803348
Mooi die discussie met extra informatie die dan naar boven komt drijven. Vaak veel waardevoller dan stackoverflow.

Php heeft dus gewoon een $var autoloader nodig :+

Het ging hier trouwens om een $_GET return dus ik zet de return waarde wel naar false als deze niet bestaat (want dat zou moeten werken)
Specialization is for insects”.—Robert Heinlein
  donderdag 19 maart 2015 @ 09:43:28 #206
230788 n8n
Pragmatisch
pi_150803763
Andere vraag qua design: Ik heb een database met alleen content, ik wil bij het openen van een pagina alle _GET['key']'s vergelijken met alle tables’ in die database.

tables: 'page', 'item', 'section', deze zet ik in een array ($table). Ik loop over de array en zeg dan
1
2
3
<?php
( isset($_GET[$table[$i]) ? $$table[$i] = new data($table[$i]) : false );
?>

'data' is een class die alle content van de table in een array zet. Wat ik dan heb is een soort table autoloader: kijk of de table relevant is voor deze pagina, table wordt geladen. Is het verstandig om hele tabellen virtueel in php te gooien? Het aantal records blijft erg minimaal. Dan heb ik dus automatisch per table een nieuwe instance van m'n data class waarin ik dan weer take, trim, get, when, unless, etc... methods in kan zetten.

Bijvoorbeeld:
1
2
3
<?php
$page
->when('published')->take(-4); // laatste 4 gepubliceerde items van deze pagina
?>


[ Bericht 25% gewijzigd door n8n op 19-03-2015 10:06:16 ]
Specialization is for insects”.—Robert Heinlein
pi_150805025
Dat kun je toch veel beter in je query afhandelen? Dit lijkt me performance-wise niet bepaald optimaal. En als je tabellen wat groter worden ga je geheid uit je geheugen limiet lopen.
  donderdag 19 maart 2015 @ 10:44:40 #208
230788 n8n
Pragmatisch
pi_150805189
quote:
5s.gif Op donderdag 19 maart 2015 10:36 schreef KomtTijd... het volgende:
Dat kun je toch veel beter in je query afhandelen? Dit lijkt me performance-wise niet bepaald optimaal. En als je tabellen wat groter worden ga je geheid uit je geheugen limiet lopen.
Ik kijk eerst of de table-name (mogelijk met een hard-coded/cached array) een match heeft met de url, als dat waar ik is pak ik de tabel met een query en hang deze aan een nieuwe instance van mn data class. de waarde van de get-key gebruik ik om de query te limiteren voor wat relevant is aan die pagina.

dus /?page=home wordt dan iets als: select * from 'page' where key 'home'. Dat valt toch wel mee? :@

Op die pagina heb ik dan automatisch een $page class waar alle data in staat die ik in de template dan weer kan benaderen/uitspugen met methods: $page->html('title'); // extract and parse title for this page

Heb dat afgekeken van http://getkirby.com, de site wordt ook niet groot (en gaat ook niet bijster veel groeien).
Specialization is for insects”.—Robert Heinlein
pi_150805377
Riep daar iemand SQL injection? :P
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
pi_150805416
Je bent dus min of meer je eigen ORM aan het uitvinden? Daar is op zich niets mis mee nee.
pi_150805464
quote:
0s.gif Op donderdag 19 maart 2015 10:53 schreef Monolith het volgende:
Riep daar iemand SQL injection? :P
riep daar iemand prepared statements? :O
  donderdag 19 maart 2015 @ 10:57:05 #212
230788 n8n
Pragmatisch
pi_150805471
quote:
14s.gif Op donderdag 19 maart 2015 10:54 schreef KomtTijd... het volgende:
Je bent dus min of meer je eigen ORM aan het uitvinden? Daar is op zich niets mis mee nee.
Dat bewijst zonder dat ik weet wat dat is, de noodzaak voor een ORM (8>

Injecteren? Er gaat niks via deze weg 'omhoog', de data die losgetrokken kan worden is al openbaar. Verder nog hiaten waar ik geen idee van heb? Weet alleen dat ik PDO moet gebruiken en ALLES moet valideren wat omhoog gaat.
Specialization is for insects”.—Robert Heinlein
pi_150805536
quote:
1s.gif Op donderdag 19 maart 2015 10:56 schreef KomtTijd... het volgende:

[..]

riep daar iemand prepared statements? :O
Natuurlijk, maar lijkt me relevant dat hij daar even rekening mee houdt.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
pi_150805625
quote:
7s.gif Op donderdag 19 maart 2015 10:57 schreef n8n het volgende:

[..]

Dat bewijst zonder dat ik weet wat dat is, de noodzaak voor een ORM (8>

Injecteren? Er gaat niks via deze weg 'omhoog', de data die losgetrokken kan worden is al openbaar. Verder nog hiaten waar ik geen idee van heb? Weet alleen dat ik PDO moet gebruiken en ALLES moet valideren wat omhoog gaat.
SQL injectie kan met iedere query waar user input in staat. Ook met select queries. Daarom nooit user input direct in je query verwerken.

En kijk ook eens naar bestaande ORM libs, zoals doctrine of redbean.
  donderdag 19 maart 2015 @ 11:06:34 #215
230788 n8n
Pragmatisch
pi_150805737
quote:
1s.gif Op donderdag 19 maart 2015 11:02 schreef KomtTijd... het volgende:

[..]

SQL injectie kan met iedere query waar user input in staat. Ook met select queries. Daarom nooit user input direct in je query verwerken.

En kijk ook eens naar bestaande ORM libs, zoals doctrine of redbean.
user input zoals een get varible zoals /?page=malafide-code. Dat vang je af met pdo/prepared statements?

Nu ik weet wat/dat een orm is zal ik even naar best practice voorbeelden kijken ja. Jammere vind ik wel altijd dat voorbeelden vaak enorm de diepte in gaan met alle mogelijke randvoorwaarden terwijl ik het juist basic wil houden (al is veiligheid uiteraard basic)
Specialization is for insects”.—Robert Heinlein
pi_150806481
quote:
1s.gif Op donderdag 19 maart 2015 11:06 schreef n8n het volgende:

[..]

user input zoals een get varible zoals /?page=malafide-code. Dat vang je af met pdo/prepared statements?
Klopt. Enige punt is dat je in jouw geval moet uitkijken voor /?malafide-code=waarde aangezien je ook min of meer dynamische tabelnamen wilt hebben op basis van de naam van request parameters. Gelukkig gebruik je de tabel en niet de request parameter daarvoor, dus dat moet goed gaan, maar het is wel iets waar je mee moet uitkijken. Helemaal omdat tabelnamen niet middels prepared statements in een query kunnen worden gestopt, dus daar ben je zelf verantwoordelijk voor het voorkomen van SQL injection.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  donderdag 19 maart 2015 @ 11:47:30 #217
230788 n8n
Pragmatisch
pi_150806935
quote:
0s.gif Op donderdag 19 maart 2015 11:32 schreef Monolith het volgende:

[..]

Klopt. Enige punt is dat je in jouw geval moet uitkijken voor /?malafide-code=waarde aangezien je ook min of meer dynamische tabelnamen wilt hebben op basis van de naam van request parameters. Gelukkig gebruik je de tabel en niet de request parameter daarvoor, dus dat moet goed gaan, maar het is wel iets waar je mee moet uitkijken. Helemaal omdat tabelnamen niet middels prepared statements in een query kunnen worden gestopt, dus daar ben je zelf verantwoordelijk voor het voorkomen van SQL injection.
de table names zet ik in een var:
1
2
3
4
<?php
$tables 
"show tables from $db"//of 
$tables = ['table1''table2'];
?>
Dit zijn dan de enige namen die in een statement voor zouden moeten kunnen komen omdat ik daarover m'n loop draai, die checkt of er een match is met de get-key. De get-waarde van die key moet ik dus valideren. op /?malafide-code zou nooit een match kunnen zijn omdat deze 'string' niet in $tables voorkomt (theoretisch).

[ Bericht 12% gewijzigd door n8n op 19-03-2015 11:53:19 ]
Specialization is for insects”.—Robert Heinlein
  donderdag 19 maart 2015 @ 18:27:45 #218
230788 n8n
Pragmatisch
pi_150819717
Code op 40 manieren gerefactored voordat ik bedacht dat je in php de global scope moet definiëren. Aaaaarggh :'(
Specialization is for insects”.—Robert Heinlein
  donderdag 19 maart 2015 @ 20:39:33 #219
187069 slacker_nl
Sicko pur sang
pi_150824582
quote:
0s.gif Op woensdag 18 maart 2015 13:21 schreef Monolith het volgende:

[..]

Veel korter dan een ternary operator krijg je een if-then-else statement niet. 'this-when-true' slaat ook niet ergens op. Wat je eigenlijk wilt is een 'default-if-null'-constructie.
Als je dat echt kort wilt, dan maak je er toch gewoon een functie van, zodat je $var = defaultIfNotSet(originalValue, defaultValue) kan hanteren?
Ow perl *;
1
2
3
4
 
$foo //= "bar" ; 
# is hetzelfde als 
$foo = defined $foo ? $foo : "bar" ; 
In theory there is no difference between theory and practice. In practice there is.
  donderdag 19 maart 2015 @ 23:06:08 #220
230788 n8n
Pragmatisch
pi_150831276
quote:
0s.gif Op donderdag 19 maart 2015 20:39 schreef slacker_nl het volgende:

[..]

Ow perl *;
[ code verwijderd ]

_O_

Al waardeer ik php een stuk beter nu ik redelijk met classes weet om te gaan. Next up: een pdo mysql controller en een simpele autoloader.
Specialization is for insects”.—Robert Heinlein
pi_150879900
quote:
0s.gif Op woensdag 18 maart 2015 13:21 schreef Monolith het volgende:

[..]

Veel korter dan een ternary operator krijg je een if-then-else statement niet. 'this-when-true' slaat ook niet ergens op. Wat je eigenlijk wilt is een 'default-if-null'-constructie.
Als je dat echt kort wilt, dan maak je er toch gewoon een functie van, zodat je $var = defaultIfNotSet(originalValue, defaultValue) kan hanteren?
:P In php 7

1$eenVariabele =  $dezeWaardeAlsHijBestaat ?? $andersDit;
pi_150895166
quote:
19s.gif Op zaterdag 21 maart 2015 12:49 schreef TwenteFC het volgende:

[..]

:P In php 7
[ code verwijderd ]

Je kan PHP 7 al uitproberen dan? De meest recente versie die gebruikt kan worden, is bij ons nog steeds PHP 5.6
pi_150900625
quote:
1s.gif Op zaterdag 21 maart 2015 22:05 schreef Robuustheid het volgende:

[..]

Je kan PHP 7 al uitproberen dan? De meest recente versie die gebruikt kan worden, is bij ons nog steeds PHP 5.6
Dat hoeft toch niet perse? Specs kunnen al lang voor enige release bekend zijn. Maar volgens mij wordt er al best lang gesleuteld aan php7 dus je kunt vast wel ergens een dev build vandaan halen als je zou willen.
pi_150932443
Yep, maar ik ga wel vanuit dat TwenteFC niet daar al mee loopt te klooien. Want dat PHP 7 is nog vrij buggy en vooral voorbehouden aan ontwikkelaars die contributies doen aan de PHP community.
pi_150940129
quote:
Dat is wel mooi. :)
  FOK!mycroftheld maandag 23 maart 2015 @ 14:37:10 #227
128465 Wrapster
pi_150948569
Hier nog mensen belang bij een leuke functie als database opschoon mannetje?

https://www.starapple.nl/vacatures/58-sql-dba/

:') _
heeft FOK verlaten
  † In Memoriam † maandag 23 maart 2015 @ 15:07:13 #228
159335 Boze_Appel
Vrij Fruit
pi_150949513
quote:
14s.gif Op maandag 23 maart 2015 14:37 schreef bondage het volgende:
Hier nog mensen belang bij een leuke functie als database opschoon mannetje?

https://www.starapple.nl/vacatures/58-sql-dba/

:') _
quote:
Aanbod
3500 met niets bijzonders
:')
Carpe Libertatem
pi_150952447
quote:
14s.gif Op maandag 23 maart 2015 14:37 schreef bondage het volgende:
Hier nog mensen belang bij een leuke functie als database opschoon mannetje?

https://www.starapple.nl/vacatures/58-sql-dba/

:') _
_O-
pi_150952465
quote:
10s.gif Op maandag 23 maart 2015 15:07 schreef Boze_Appel het volgende:

[..]

[..]

:')
Die viel mij ook op ja. :')
Zo trek je ook geen mensen natuurlijk. Zet er dan iets neer in de trant van '3500 euro, een zak beukenootjes en een eekhoorn' of iets dergelijks. Dat zou wel bijzonder zijn.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
  FOK!mycroftheld maandag 23 maart 2015 @ 16:41:04 #231
128465 Wrapster
pi_150952578
quote:
0s.gif Op maandag 23 maart 2015 16:37 schreef Monolith het volgende:

[..]

Die viel mij ook op ja. :')
Zo trek je ook geen mensen natuurlijk. Zet er dan iets neer in de trant van '3500 euro, een zak beukenootjes en een eekhoorn' of iets dergelijks. Dat zou wel bijzonder zijn.
Dit is inderdaad een voorbeeld van hoe je het absoluut niet moet doen. Leuk aanbod maar ik laat het liever aan me voorbij gaan |:(
heeft FOK verlaten
  maandag 23 maart 2015 @ 21:39:27 #232
230788 n8n
Pragmatisch
pi_150964768
quote:
10s.gif Op maandag 23 maart 2015 16:41 schreef bondage het volgende:

[..]

Dit is inderdaad een voorbeeld van hoe je het absoluut niet moet doen. Leuk aanbod maar ik laat het liever aan me voorbij gaan |:(
beter dan de eeuwige zoektocht naar een ondernemende teamplayer die van aanpakken weet.
Specialization is for insects”.—Robert Heinlein
pi_150965459
quote:
1s.gif Op maandag 23 maart 2015 21:39 schreef n8n het volgende:

[..]

beter dan de eeuwige zoektocht naar een ondernemende teamplayer die van aanpakken weet.
Zie jij dat vaak in vacatures? Ik zie toch voornamelijk zwaar op de inhoud gerichte vacatures voorbij komen.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
pi_150968386
quote:
0s.gif Op zondag 22 maart 2015 22:30 schreef Robuustheid het volgende:
Yep, maar ik ga wel vanuit dat TwenteFC niet daar al mee loopt te klooien. Want dat PHP 7 is nog vrij buggy en vooral voorbehouden aan ontwikkelaars die contributies doen aan de PHP community.
Nog niet geprobeerd nee, maar ik hou gewoon de RFC's in de gaten :P

https://wiki.php.net/rfc/isset_ternary
  maandag 23 maart 2015 @ 23:03:49 #235
230788 n8n
Pragmatisch
pi_150969085
quote:
1s.gif Op maandag 23 maart 2015 21:51 schreef Monolith het volgende:

[..]

Zie jij dat vaak in vacatures? Ik zie toch voornamelijk zwaar op de inhoud gerichte vacatures voorbij komen.
Ik lees ze eigenlijk vrijwel nooit, het zijn wel de vervelende pro-actieve teksten die negatief opvallen (geschreven door zo’n ‘vlotte’ marketing-asshole).
Specialization is for insects”.—Robert Heinlein
pi_150969888
quote:
7s.gif Op maandag 23 maart 2015 23:03 schreef n8n het volgende:

[..]

Ik lees ze eigenlijk vrijwel nooit, het zijn wel de vervelende pro-actieve teksten die negatief opvallen (geschreven door zo’n ‘vlotte’ marketing-asshole).
Ik sta op de mailinglist van een aantal recruiters en daarnaast word ik sowieso wel vaak benaderd via LinkedIn en het zijn in ieder geval altijd vacatures die naast de primaire arbeidsvoorwaarden voornamelijk benadrukken dat er uitstekende opleidingsbudgetten zijn, met welke cutting-edge technologieën wordt gewerkt, enzovoort. Zelfs in de HR zijn ze niet helemaal achterlijk en weten ze wel dat ze de vacatures moeten aanpassen op hun doelpubliek. Dat de recruiters vaak zelf niet snappen dat bepaalde technologieën mijlenver uit elkaar liggen is natuurlijk een ander verhaal. :P
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
pi_150971698
:o Voor de grap HHVM eens geinstalleerd, maar dayum .. dat vliegt écht hard.

:P Niet dat mijn kut test wat zegt, maar toch;

Blanco Laravel 5 installatie. 1 view


Laravel 5 App met 5 views.


[ Bericht 55% gewijzigd door TwenteFC op 24-03-2015 00:48:13 ]
pi_150983717
Geen PHP-versie maar interessante module om vectorafbeeldingen te maken op basis van "ASCII art".
Ga misschien kijken of/hoe het in PHP is te maken ;)

Replacing Photoshop with NSString
ASCII Image

When the student is ready, the teacher will appear.
When the student is truly ready, the teacher will disappear.
pi_150989274
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_151227063
PHP Generics

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
<?php
class Item<T> {

    protected 
$item;

    public function 
__construct(T $item null)
    {
        
$this->item $item;
    }

    public function 
getItem()
    {
        return 
$item;
    }

    public function 
setItem(T $item)
    {
        
$this->item $item;
    }
}

class 
Test {
    public function 
runTest()
    {
        
$item = new Item<StdClass>;
        
var_dump($item instanceof Item); // true
        
$item->setItem(new StdClass); // works fine
        // $item->setItem([]); // E_RECOVERABLE_ERROR
    
}
}
?>
When the student is ready, the teacher will appear.
When the student is truly ready, the teacher will disappear.
pi_151227777
Ik weet niet of dit hier hoort, maar kent iemand het probleem dat bij url rewrites 2 keer de regel wordt uitgevoerd?

Mijn htaccess ziet er zo uit:

1
2
3
4
5
6
7
8
9
10
11
RewriteEngine On

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?querystring=$1 [L]

als ik bv naar http://mijndomein/blabla/ ga, dan wordt het index.php 2 keer opgeroepen. Zit er gewoon een foutje in, of is dit standaard?

[edit]
Ik zie dat het probleem zich alleen voordoet in firefox en ie :? Dit is toch serverside?
[/edit]
  dinsdag 31 maart 2015 @ 15:55:08 #242
91039 mstx
2x1/2 = 1/2 x 1/2
pi_151228355
quote:
99s.gif Op dinsdag 31 maart 2015 15:39 schreef boskameel het volgende:
Ik weet niet of dit hier hoort, maar kent iemand het probleem dat bij url rewrites 2 keer de regel wordt uitgevoerd?

Mijn htaccess ziet er zo uit:
[ code verwijderd ]

als ik bv naar http://mijndomein/blabla/ ga, dan wordt het index.php 2 keer opgeroepen. Zit er gewoon een foutje in, of is dit standaard?

[edit]
Ik zie dat het probleem zich alleen voordoet in firefox en ie :? Dit is toch serverside?
[/edit]
Kijk eens in de network tab van firebug/developer tools, misschien zit er in je html een tag met een verkeerde of lege href/src die naar de index.php wordt doorgestuurd.
Op donderdag 2 juli 2009 22:41 schreef RTB het volgende:
als ik elk rap"liedje" een kans moest geven was ik aan het eind van dit millennium nog bezig met het tempo waarin die kotshoop uitgebraakt wordt.
👾
pi_151229007
Thanks, ik zie het, het is de base href. Maar die heb ik nodig, anders zal ik alles moeten omzetten naar absolute paden.
  zondag 5 april 2015 @ 11:05:06 #244
118585 Crutch
Filantroop || Taalzwengel
pi_151381725
quote:
99s.gif Op dinsdag 31 maart 2015 16:14 schreef boskameel het volgende:
Thanks, ik zie het, het is de base href. Maar die heb ik nodig, anders zal ik alles moeten omzetten naar absolute paden.
Is het niet je browser die een request doet naar je favicon.ico?
Je moeder is een hamster
pi_151392965
Een vraagje, ik ben zelf de PHP taal niet machtig maar met Google kom je al een heel eind. Laatst heb ik een leuk scriptje gevonden dat netjes in mijn map waar ik beveiligingscamera foto's opsla de foto's ouder dan 7 dagen verwijderde. Nu is mijn website leuk gecrasht en ben ik alles kwijt :')

Met als gevolg, ik moet opnieuw .jpg's automatisch verwijderd krijgen die ouder zijn dan 7 dagen. Puur jpg's, anders verwijderd die alles eromheen ook :')

Ik heb zelf dit gevonden:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
$expiretime=10080; //expire time in minutes, 7 days = 7*24*60
 
$tmpFolder="pictures/";
$fileTypes="*.*";
 
foreach (glob($tmpFolder . $fileTypes) as $Filename) {
 
// Read file creation time
$FileCreationTime = filectime($Filename);
 
// Calculate file age in seconds
$FileAge = time() - $FileCreationTime;
 
// Is the file older than the given time span?
if ($FileAge > ($expiretime * 60)){
 
// Now do something with the olders files...
 
echo "The file $Filename is older than $expiretime minutes\n";
 
//delete files:
unlink($Filename);
}
 
}
?>

https://naiboo.wordpress.(...)ys-or-10080-minutes/

Maar die doet niks ;( Wat doe ik fout?
  FOK!mycroftheld zondag 5 april 2015 @ 17:43:24 #246
128465 Wrapster
pi_151393204
quote:
0s.gif Op zondag 5 april 2015 17:36 schreef davedavy het volgende:
Een vraagje, ik ben zelf de PHP taal niet machtig maar met Google kom je al een heel eind. Laatst heb ik een leuk scriptje gevonden dat netjes in mijn map waar ik beveiligingscamera foto's opsla de foto's ouder dan 7 dagen verwijderde. Nu is mijn website leuk gecrasht en ben ik alles kwijt :')

Met als gevolg, ik moet opnieuw .jpg's automatisch verwijderd krijgen die ouder zijn dan 7 dagen. Puur jpg's, anders verwijderd die alles eromheen ook :')

Ik heb zelf dit gevonden:
[ code verwijderd ]

https://naiboo.wordpress.(...)ys-or-10080-minutes/

Maar die doet niks ;( Wat doe ik fout?
Krijg je helemaal geen output? Alleen jpg verwijderen zou je hiermee moeten kunnen doen: $fileTypes="*.*"; veranderen in $fileTypes="*.jpg";
heeft FOK verlaten
pi_151393495
quote:
11s.gif Op zondag 5 april 2015 17:43 schreef bondage het volgende:

[..]

Krijg je helemaal geen output? Alleen jpg verwijderen zou je hiermee moeten kunnen doen: $fileTypes="*.*"; veranderen in $fileTypes="*.jpg";
Uiteraard heb ik $fileTypes="*.*" al veranderd naar $fileTypes="*.jpg" maar ik krijg totaal geen output, de jpg bestandjes staan er nog leuk in. En ze zijn ook ouder dan de aangegeven tijd.
pi_151393571
Heb je wel de foutmeldingen aan staan? En zijn er uberhaupt .jpg afbeeldingen die ouder dan 7 dagen zijn?
pi_151393648
Ik zou eerst eens debuggen op zijn PHP's. :P
Oftewel echo de verschillende variabelen om te zien of er überhaupt files gevonden worden, hoe oud ze zijn, enzovoort.
Volkorenbrood: "Geen quotes meer in jullie sigs gaarne."
pi_151393666
quote:
19s.gif Op zondag 5 april 2015 17:58 schreef TwenteFC het volgende:
Heb je wel de foutmeldingen aan staan? En zijn er uberhaupt .jpg afbeeldingen die ouder dan 7 dagen zijn?
Beiden ja, ik heb atm de tijd op slechts 1 minuut staan en hij verwijderd nog steeds niets :') Er is trouwens wel een error maar dat lijkt me er niks mee te doen hebben:

1[05-Apr-2015 10:58:54 CST6CDT] PHP Warning:  Module 'sqlite' already loaded in Unknown on line 0

De tijd klopt niet, weer een fout van me crappy host. Net als deze error neem ik aan.

"$tmpFolder="pictures/"; " moet leiden naar de map waar de jpg files zitten neem ik aan? Wellicht dat ik daar naar de foute map zit te leiden oid. Ik moet het absolut path hebben toch?
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')