abonnement Unibet Coolblue Bitvavo
pi_142972961
quote:
1s.gif Op vrijdag 1 augustus 2014 19:53 schreef robin007bond het volgende:
phpdocumentor draaide niet lekker op mijn WAMP-omgeving. Helaas geen tijd gehad het recht te trekken.

Mijn vakantiewerk is voorbij dus vanaf nu is het weer hobbyen. :P
Phpdocumentor? Is dat zo echt nodig? Het lijkt in sommige gevallen best overbodig.
Ik zie er in dit geval nog geen meerwaarde van in

soort van Javadocs voor jezelf ?
Redacted
pi_142973406
quote:
0s.gif Op vrijdag 1 augustus 2014 22:41 schreef cablegunmaster het volgende:

[..]

Phpdocumentor? Is dat zo echt nodig? Het lijkt in sommige gevallen best overbodig.
Ik zie er in dit geval nog geen meerwaarde van in

soort van Javadocs voor jezelf ?
Als je een API maakt bijvoorbeeld. :)
  vrijdag 1 augustus 2014 @ 23:40:26 #153
187069 slacker_nl
Sicko pur sang
pi_142975493
quote:
0s.gif Op vrijdag 1 augustus 2014 22:41 schreef cablegunmaster het volgende:

[..]

Phpdocumentor? Is dat zo echt nodig? Het lijkt in sommige gevallen best overbodig.
Ik zie er in dit geval nog geen meerwaarde van in

soort van Javadocs voor jezelf ?
Je ziet geen voordeel in documentatie?

quote:
Average number of code comments
xxxx is written mostly in Perl.

Across all Perl projects on Open Hub, 26% of all source code lines are comments.

This holds true for xxxx as well. It contains the same ratio of comment lines to code lines as the majority of Perl projects in Open Hub.

A high number of comments might indicate that the code is well-documented and organized, and could be a sign of a helpful and disciplined development team.
(bron is OpenHub.net)

Daarom is documentatie van belang. Plus, over een jaar weet je echt niet meer waarom je iets gedaan hebt. Documentatie is dan van belang, ookal is je code vanzelfsprekend.
In theory there is no difference between theory and practice. In practice there is.
pi_142975884
quote:
0s.gif Op vrijdag 1 augustus 2014 23:40 schreef slacker_nl het volgende:

[..]

Je ziet geen voordeel in documentatie?

[..]

(bron is OpenHub.net)

Daarom is documentatie van belang. Plus, over een jaar weet je echt niet meer waarom je iets gedaan hebt. Documentatie is dan van belang, ookal is je code vanzelfsprekend.
Dat is waar , natuurlijk is documentatie meerwaarde, maar ik ken het programma niet en vraag dermate daarom waarom ik dit programma zou gebruiken. :). De meerwaarde van dit programma.
aangezien mijn doelgroep eigen software is, en mogelijk 1 - 2 lib files met alle functies die ik gebruik.
Redacted
  vrijdag 1 augustus 2014 @ 23:53:47 #155
187069 slacker_nl
Sicko pur sang
pi_142976190
quote:
0s.gif Op vrijdag 1 augustus 2014 23:48 schreef cablegunmaster het volgende:

[..]

Dat is waar , natuurlijk is documentatie meerwaarde, maar ik ken het programma niet en vraag dermate daarom waarom ik dit programma zou gebruiken. :). De meerwaarde van dit programma.
aangezien mijn doelgroep eigen software is, en mogelijk 1 - 2 lib files met alle functies die ik gebruik.
Zelfs met eigen code is het belangrijk. Als ik naar code van zoveel jaar terug kijk denk ik soms ook: what was I thinking?!
In theory there is no difference between theory and practice. In practice there is.
pi_142978518
quote:
0s.gif Op vrijdag 1 augustus 2014 23:53 schreef slacker_nl het volgende:

[..]

Zelfs met eigen code is het belangrijk. Als ik naar code van zoveel jaar terug kijk denk ik soms ook: was I thinking?!
Fixed :)
  maandag 4 augustus 2014 @ 18:10:08 #157
230788 n8n
Pragmatisch
pi_143059271
In Atom kan je de line-height instellen, staat nu op 1.8 en dat werkt erg prettig. Kan nu een stuk vaker af zonder witregel in de code zonder dat het onoverzichtelijk wordt
Specialization is for insects”.—Robert Heinlein
pi_143062154
quote:
0s.gif Op vrijdag 1 augustus 2014 23:53 schreef slacker_nl het volgende:

[..]

Zelfs met eigen code is het belangrijk. Als ik naar code van zoveel jaar terug kijk denk ik soms ook: what was I thinking?!
Meestal als je klaar bent en je kijkt terug heb je dat al :')
Omdat je vaak nieuwe kennis hebt opgedaan tijdens het maken van.
pi_143072242
Ik heb een aardig probleem. Ik heb 2 dagen mee geworsteld, en toen kwam ik er nog niet uit. Ervaren programmeurs hier wisten het ook niet. :P.

Ik heb even uitgetypt, met een MySQL tabel als voorbeeld met daarin fictieve waarden:

  +-----------+-----------------+---------------------+             
   |   Naam    |   Gespreksduur  |   TypeGesprek       |             
   +---------------------------------------------------+             
   |           |                 |                     |             
   |   Jaap    |   00:17:45      |   Vaste lijn        |             
   |   Anita   |   00:06:33      |   Vaste lijn        |             
   |   Kees    |   00:06:44      |   Mobiele lijn      |             
   |   Jaap    |   00:02:36      |   Vaste lijn        |             
   |   Jaap    |   00:02:34      |   Mobiele lijn      |             
   |   Anita   |   00:04:50      |   Mobiele lijn      |             
   |   Jaap    |   00:02:41      |   Vaste lijn        |             
   |   Maartje |   00:03:43      |   Mobiele lijn      |             
   |   Kees    |   01:02:46      |   Vaste lijn        |             
   |   Anita   |   00:05:34      |   Mobiele lijn      |             
   |   Jaap    |   00:16:34      |   Vaste lijn        |             
   +-----------+-----------------+---------------------+         

Je hebt dus in de tabel een naam die gebeld heeft, tijdsduur van gesprek, en soort gesprek.

Ik heb de volgende SQL-statement:

1
2
3
4
SELECT                                          naam
SEC_TO_TIME(SUM(TIME_TO_SEC(Gespreksduur))) as totaalduur 
FROM                                             telefoongesprekken
GROUP BY                                    naam

Dan verschijnen er 2 columns, namelijk de totale tijd en per persoon. Je ziet dus wie totaal uren gebeld heeft. Dan kun je daarop selecteren.

Nu moet er een 3e column bijkomen.

Nu moet ik dat uitscheiden naar type gesprek per persoon, binnen dezelfde query, zodat er een column verschijnt met totale uren per type gesprek, gegroepeerd naar naam.
Dus er moeten nog columns naast de huidige 2 columns komen, namelijk hoeveel uren daarvan aan Mobiele Gesprekken besteed zijn, en hoeveel daarvan aan Vaste gesprekken.

Ik heb verschillende varianten geprobeerd zoals:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SELECT   
(
SELECT naam
SEC_TO_TIME(SUM(TIME_TO_SEC(Gespreksduur))) as vastduur
FROM     telefoongesprekken
WHERE TypeGesprek = 'Vaste lijn'
GROUP BY naam
),
(
SELECT naam
SEC_TO_TIME(SUM(TIME_TO_SEC(Gespreksduur))) as mobielduur
FROM     telefoongesprekken
WHERE TypeGesprek = 'Mobiele lijn'
GROUP BY naam
)

Werkte niet, naast talloze varianten zoals:

1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT   naam
SEC_TO_TIME(SUM(TIME_TO_SEC(Gespreksduur))) as vastduur
FROM     telefoongesprekken
WHERE TypeGesprek = 'Vaste lijn'
GROUP BY naam

UNION 

SELECT
SEC_TO_TIME(SUM(TIME_TO_SEC(Gespreksduur))) as mobielduur
FROM     telefoongesprekken
WHERE TypeGesprek = 'Mobiele lijn'
GROUP BY naam

Dat gaf niet het gewenste resultaat. De waarden worden dan in 1 column gesorteerd, terwijl er eigenlijk 2 columns bij moeten komen. :'(.

Ik ben niet iemand die het gaat vragen, maar alles uitzoekt. Maar na 2 hele dagen zoeken op internet, is het nog steeds niet gelukt. :( Wel trof ik suggesties voor LEFT JOIN etc aan, maar die hebben betrekking op externe tabels. Anders zouden de waarden van naam, en totale gespreksduur ook weer weg vallen.

Hebben de Fokkers onder ons nog tips? :?
pi_143074487
quote:
1s.gif Op maandag 4 augustus 2014 23:39 schreef Robuustheid het volgende:
Ik heb een aardig probleem. Ik heb 2 dagen mee geworsteld, en toen kwam ik er nog niet uit. Ervaren programmeurs hier wisten het ook niet. :P.
Zoiets?
1
2
3
4
5
SELECT                                          naam,
SEC_TO_TIME(SUM(TIME_TO_SEC(Gespreksduur))) as totaalduur,
TypeGesprek 
FROM                                             telefoongesprekken
GROUP BY                                    naam, TypeGesprek
pi_143144959
Nee, dat is hem niet. Je moet daarop nog kunnen selecteren vanuit PHP. Toch nog bedankt voor het meedenken! :)

Wel heb ik nog een vraag. Stel, je hebt in MySQL een varchar-kolom met daarin 2 rijen:

09000000001
09000024#

Waarom retourneert deze query alleen 1 rij? Namelijk die met een hekje erin :?.

1
2
3
SELECT GebeldeNummer
FROM telefoongesprekken
WHERE SUBSTRING( telefoongesprekken.GebeldeNummer, 1, 4 ) =  '0900'
  woensdag 6 augustus 2014 @ 22:57:21 #162
178193 Juicyhil
Bekende FOK!ker
pi_143145088
quote:
1s.gif Op woensdag 6 augustus 2014 22:54 schreef Robuustheid het volgende:
Nee, dat is hem niet. Je moet daarop nog kunnen selecteren vanuit PHP. Toch nog bedankt voor het meedenken! :)

Wel heb ik nog een vraag. Stel, je hebt in MySQL een varchar-kolom met daarin 2 rijen:

09000000001
09000024#

Waarom retourneert deze query alleen 1 rij? Namelijk die met een hekje erin :?.
[ code verwijderd ]

Zit er misschien een spatie in die eerste aan het begin? Tevens zou ik gewoon gebruiken:

1WHERE telefoongesprekken.GebeldeNummer LIKE  '0900%'
Op dinsdag 9 augustus 2011 23:01 schreef SuperrrTuxxx het volgende:
Ik hou zoveel van jou, ik doe alles voor je! O+
pi_143151336
quote:
1s.gif Op woensdag 6 augustus 2014 22:54 schreef Robuustheid het volgende:
Nee, dat is hem niet. Je moet daarop nog kunnen selecteren vanuit PHP. Toch nog bedankt voor het meedenken! :)

Wel heb ik nog een vraag. Stel, je hebt in MySQL een varchar-kolom met daarin 2 rijen:

09000000001
09000024#

Waarom retourneert deze query alleen 1 rij? Namelijk die met een hekje erin :?.
[ code verwijderd ]

je zou gewoon 2 resultaten moeten krijgen.

pi_143152260
quote:
1s.gif Op maandag 4 augustus 2014 23:39 schreef Robuustheid het volgende:
Ik heb een aardig probleem. Ik heb 2 dagen mee geworsteld, en toen kwam ik er nog niet uit. Ervaren programmeurs hier wisten het ook niet. :P.

Ik heb even uitgetypt, met een MySQL tabel als voorbeeld met daarin fictieve waarden:

  +-----------+-----------------+---------------------+             
   |   Naam    |   Gespreksduur  |   TypeGesprek       |             
   +---------------------------------------------------+             
   |           |                 |                     |             
   |   Jaap    |   00:17:45      |   Vaste lijn        |             
   |   Anita   |   00:06:33      |   Vaste lijn        |             
   |   Kees    |   00:06:44      |   Mobiele lijn      |             
   |   Jaap    |   00:02:36      |   Vaste lijn        |             
   |   Jaap    |   00:02:34      |   Mobiele lijn      |             
   |   Anita   |   00:04:50      |   Mobiele lijn      |             
   |   Jaap    |   00:02:41      |   Vaste lijn        |             
   |   Maartje |   00:03:43      |   Mobiele lijn      |             
   |   Kees    |   01:02:46      |   Vaste lijn        |             
   |   Anita   |   00:05:34      |   Mobiele lijn      |             
   |   Jaap    |   00:16:34      |   Vaste lijn        |             
   +-----------+-----------------+---------------------+         

Je hebt dus in de tabel een naam die gebeld heeft, tijdsduur van gesprek, en soort gesprek.

Ik heb de volgende SQL-statement:
[ code verwijderd ]

Dan verschijnen er 2 columns, namelijk de totale tijd en per persoon. Je ziet dus wie totaal uren gebeld heeft. Dan kun je daarop selecteren.

Nu moet er een 3e column bijkomen.

Nu moet ik dat uitscheiden naar type gesprek per persoon, binnen dezelfde query, zodat er een column verschijnt met totale uren per type gesprek, gegroepeerd naar naam.
Dus er moeten nog columns naast de huidige 2 columns komen, namelijk hoeveel uren daarvan aan Mobiele Gesprekken besteed zijn, en hoeveel daarvan aan Vaste gesprekken.

Ik heb verschillende varianten geprobeerd zoals:
[ code verwijderd ]

Werkte niet, naast talloze varianten zoals:
[ code verwijderd ]

Dat gaf niet het gewenste resultaat. De waarden worden dan in 1 column gesorteerd, terwijl er eigenlijk 2 columns bij moeten komen. :'(.

Ik ben niet iemand die het gaat vragen, maar alles uitzoekt. Maar na 2 hele dagen zoeken op internet, is het nog steeds niet gelukt. :( Wel trof ik suggesties voor LEFT JOIN etc aan, maar die hebben betrekking op externe tabels. Anders zouden de waarden van naam, en totale gespreksduur ook weer weg vallen.

Hebben de Fokkers onder ons nog tips? :?
Heb ff test tabelletje gemaakt



Is dit wat je zoekt?



1
2
3
4
5
6
SELECT naam, 
SEC_TO_TIME(SUM(TIME_TO_SEC(duur))) as totaal,
SEC_TO_TIME(SUM(CASE WHEN type = "vast" THEN TIME_TO_SEC(duur) ELSE 0 END)) as vast,
SEC_TO_TIME(SUM(CASE WHEN type = "mobiel" THEN TIME_TO_SEC(duur) ELSE 0 END)) as mobiel
FROM gesprekken
GROUP BY naam



Maar kom op hee, dit is basis MySQL, je gaat mij niet vertellen dat "ervaren" programmeurs dit niet konden verzinnen :')

[ Bericht 1% gewijzigd door remi1986 op 07-08-2014 02:03:21 ]
pi_143194078
Ik heb een bestand, te downloaden via: http://1.2.3.4/file.iso
Echter wil ik dat deze bestand alleen te downloaden is via een PHP script, bijv: http://1.2.3.4/download.php

Als ik in download.php het volgende zet:
<?php
header('Location: http://1.2.3.4/file.iso');
?>

Dan wordt je volgens mij redirected naar http://1.2.3.4/file.iso dus de gebruiker ziet de directe URL, deze wil ik juist geheim houden. Welke functie moet ik hiervoor gebruiken?
  vrijdag 8 augustus 2014 @ 11:41:57 #166
178193 Juicyhil
Bekende FOK!ker
pi_143194203
quote:
0s.gif Op vrijdag 8 augustus 2014 11:37 schreef xaban06 het volgende:
Ik heb een bestand, te downloaden via: http://1.2.3.4/file.iso
Echter wil ik dat deze bestand alleen te downloaden is via een PHP script, bijv: http://1.2.3.4/download.php

Als ik in download.php het volgende zet:
<?php
header('Location: http://1.2.3.4/file.iso');
?>

Dan wordt je volgens mij redirected naar http://1.2.3.4/file.iso dus de gebruiker ziet de directe URL, deze wil ik juist geheim houden. Welke functie moet ik hiervoor gebruiken?
Kan het niet via een RewriteRule in je htaccess?
1RewriteRule ^/download        /file.iso [L]
Op dinsdag 9 augustus 2011 23:01 schreef SuperrrTuxxx het volgende:
Ik hou zoveel van jou, ik doe alles voor je! O+
  vrijdag 8 augustus 2014 @ 11:47:41 #167
91039 mstx
2x1/2 = 1/2 x 1/2
pi_143194370
quote:
0s.gif Op vrijdag 8 augustus 2014 11:37 schreef xaban06 het volgende:
Ik heb een bestand, te downloaden via: http://1.2.3.4/file.iso
Echter wil ik dat deze bestand alleen te downloaden is via een PHP script, bijv: http://1.2.3.4/download.php

Als ik in download.php het volgende zet:
<?php
header('Location: http://1.2.3.4/file.iso');
?>

Dan wordt je volgens mij redirected naar http://1.2.3.4/file.iso dus de gebruiker ziet de directe URL, deze wil ik juist geheim houden. Welke functie moet ik hiervoor gebruiken?
http://nl1.php.net/fread

Gewoon het bestand met php uitlezen en outputten naar de user
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_143195214
quote:
0s.gif Op vrijdag 8 augustus 2014 11:47 schreef mstx het volgende:

[..]

http://nl1.php.net/fread

Gewoon het bestand met php uitlezen en outputten naar de user
In combinatie met http://php.net/fpassthru dan.

En als je zeker wilt dat niemand bij het bestand kan behalve via het PHP script, dan is het verstandig om die bestanden buiten de webroot te zetten.
Schuimpje... mijn liefste. Verlaat mij nimmer weer...
pi_143195737
quote:
0s.gif Op vrijdag 8 augustus 2014 11:47 schreef mstx het volgende:

[..]

http://nl1.php.net/fread

Gewoon het bestand met php uitlezen en outputten naar de user
Thanks!
Opgelost. Bestanden staan nu buiten de webroot :)
pi_143200949
Wat mis ik hier?
1
2
3
4
5
6
mysql> SELECT ROUND( 0.0025, 3 );
+--------------------+
| round( 0.0025, 3 ) |
+--------------------+
|              0.003 |
+--------------------+
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
mysql> CREATE TABLE `test` (
  `value` float NOT NULL,
  `decimals` tinyint(4) NOT NULL
);

mysql> INSERT INTO test (value,decimals) VALUES (0.0025,3);

mysql> SELECT * FROM test;
+--------+----------+
| value  | decimals |
+--------+----------+
| 0.0025 |        3 |
+--------+----------+

mysql> SELECT ROUND( value, decimals ) FROM test;
+--------------------------+
| round( value, decimals ) |
+--------------------------+
|                    0.002 |
+--------------------------+
Edit: lijkt een floating point probleem te zijn. Met DECIMAL werkt het wel.

[ Bericht 1% gewijzigd door Aether op 08-08-2014 15:20:54 ]
When the student is ready, the teacher will appear.
When the student is truly ready, the teacher will disappear.
pi_143202390
quote:
5s.gif Op vrijdag 8 augustus 2014 15:12 schreef Aether het volgende:
Wat mis ik hier?
[ code verwijderd ]

[ code verwijderd ]

Edit: lijkt een floating point probleem te zijn. Met DECIMAL werkt het wel.
float is bijna altijd een probleem :P
..///
pi_143203233
quote:
5s.gif Op vrijdag 8 augustus 2014 15:12 schreef Aether het volgende:
Wat mis ik hier?
[ code verwijderd ]

[ code verwijderd ]

Edit: lijkt een floating point probleem te zijn. Met DECIMAL werkt het wel.
http://www.h-schmidt.net/FloatConverter/IEEE754.html

Schuimpje... mijn liefste. Verlaat mij nimmer weer...
pi_143384208
Hoi ik heb een vraagje over een tutorial die ik ging volgen waarbij er de php mail() functie werd gebruikt. Hier is de link van de tutorial:

De php mail() functie werkt wel, omdat hij true als waarde terug geeft. Maar ik ontvang geen email als ik een account registreer. Dit had ik dus getest met de volgende stukje code:

1
2
3
4
5
6
if(mail($to, $subject, $message, $headers)){
echo "Email has been sent to<b> ".$to."</b>";
}
else{
echo "Failed sending message to <b> ".$to."</b>.";
}

Maar ik weet nog steeds niet hoe ik dit probleem kan fixen. Kan iemand me misschien helpen?

Hier is de rest van mijn code die ik gebruik:
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
// END FORM DATA ERROR HANDLING
        // Begin Insertion of data into the database
        // Hash the password and apply your own mysterious unique salt
        $cryptpass = crypt($p); //<-- dit wordt een 30 bit/characters cryptic hash
        include_once ("php_includes/randStrGen.php");
        $p_hash = randStrGen(20)."$cryptpass".randStrGen(20);
        // Add user info into the database table for the main site table
        $sql = "INSERT INTO users (username, email, password, gender, country, ip, signup, lastlogin, notescheck)       
                VALUES('$u','$e','$p_hash','$g','$c','$ip',now(),now(),now())";
        $query = mysqli_query($db_conx, $sql); //<-- Dit runt de query
        $uid = mysqli_insert_id($db_conx);
        // Establish their row in the useroptions table
        $sql = "INSERT INTO useroptions (id, username, background) VALUES ('$uid','$u','original')";
        $query = mysqli_query($db_conx, $sql);
        // Create directory(folder) to hold each user's files(pics, MP3s, etc.)
        if (!file_exists("user/$u")) { //Als de folder met de naam van de user niet bestaat, dan maken we die folder aan.
            mkdir("user/$u", 0755); //0755 zijn de folder permissies oftewel chmod
        }
        // Email the user their activation link
        $to = "$e";    
                 
        $from = "auto_responder@yomacho.host56.com"; 
        
        /*als je een email gebruikt die ook op de server(van je host (=yomacho.host56.com)) draait 
        *en waar je website ook draait. Dan ontvangt de user een email in zijn inbox en niet in zijn junkbox. */
        $subject = 'Facebook Clone Account Activation';
        $message = '<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Facebook Clone Message</title></head><body style="margin:0px;
         font-family:Tahoma, Geneva, sans-serif;"><div style="padding:10px; background:#333; font-size:24px; color:#CCC;">
         <a href="http://www.yoursitename.com"><img src="http://www.yoursitename.com/images/logo.png" width="36" height="30" alt="Facebook Clone"
         style="border:none; float:left;"></a>yoursitename Account Activation</div><div style="padding:24px; font-size:17px;">Hello '.$u.',<br /><br />
         Click the link below to activate your account when ready:<br /><br /><a href="http://http://yomacho.host56.com/activation.php?id='.$uid.'&u='.$u.'&e='.
         $e.'&p='.$p_hash.'">Click here to activate your account now</a><br /><br />Login after successful activation using your:<br />* E-mail Address: 
         <b>'.$e.'</b></div></body></html>';
        $headers = "From: $fromn";
        $headers .= "MIME-Version: 1.0n";
        $headers .= "Content-type: text/html; charset=iso-8859-1n";
        
        //mail($to, $subject, $message, $headers);
        if(mail($to, $subject, $message, $headers)){
            echo "Email has been sent to<b> ".$to."</b>";
        }
        else{
            echo "Failed sending message to <b> ".$to."</b>.";
        }

        echo "signup_success";
        exit();

Ook vind ik het geen probleem als iemand me wilt helpen via Skype. Omdat ik dat ook waardeer :).
pi_143388728
quote:
0s.gif Op woensdag 13 augustus 2014 17:33 schreef superky het volgende:
Hoi ik heb een vraagje over een tutorial die ik ging volgen waarbij er de php mail() functie werd gebruikt. Hier is de link van de tutorial:

De php mail() functie werkt wel, omdat hij true als waarde terug geeft. Maar ik ontvang geen email als ik een account registreer. Dit had ik dus getest met de volgende stukje code:
[ code verwijderd ]

Maar ik weet nog steeds niet hoe ik dit probleem kan fixen. Kan iemand me misschien helpen?

Hier is de rest van mijn code die ik gebruik:
[ code verwijderd ]

Ook vind ik het geen probleem als iemand me wilt helpen via Skype. Omdat ik dat ook waardeer :).
Gebruik een externe library man. De ingebouwde mail functie zuigt. :P
  woensdag 13 augustus 2014 @ 19:52:01 #175
178193 Juicyhil
Bekende FOK!ker
pi_143388779
quote:
1s.gif Op woensdag 13 augustus 2014 19:50 schreef robin007bond het volgende:

[..]

Gebruik een externe library man. De ingebouwde mail functie zuigt. :P
Meeste frameworks hebben daar alleen maar een wrapper omheen gebouwd. Dus dan blijft meneer hetzelfde issue uiteindelijk hebben...
Op dinsdag 9 augustus 2011 23:01 schreef SuperrrTuxxx het volgende:
Ik hou zoveel van jou, ik doe alles voor je! O+
  woensdag 13 augustus 2014 @ 19:54:00 #176
178193 Juicyhil
Bekende FOK!ker
pi_143388842
quote:
0s.gif Op woensdag 13 augustus 2014 17:33 schreef superky het volgende:
Hoi ik heb een vraagje over een tutorial die ik ging volgen waarbij er de php mail() functie werd gebruikt. Hier is de link van de tutorial:

De php mail() functie werkt wel, omdat hij true als waarde terug geeft. Maar ik ontvang geen email als ik een account registreer. Dit had ik dus getest met de volgende stukje code:
[ code verwijderd ]

Maar ik weet nog steeds niet hoe ik dit probleem kan fixen. Kan iemand me misschien helpen?

Hier is de rest van mijn code die ik gebruik:
[ code verwijderd ]

Ook vind ik het geen probleem als iemand me wilt helpen via Skype. Omdat ik dat ook waardeer :).
Misschien die typo hier:

$headers = "From: $fromn";
Op dinsdag 9 augustus 2011 23:01 schreef SuperrrTuxxx het volgende:
Ik hou zoveel van jou, ik doe alles voor je! O+
  woensdag 13 augustus 2014 @ 19:56:00 #177
178193 Juicyhil
Bekende FOK!ker
pi_143388913
En die headers moeten op aparte regels, zie: http://php.net/manual/en/function.mail.php

1
2
3
4
5
<?php
'From: webmaster@example.com' "\r\n" .
    
'Reply-To: webmaster@example.com' "\r\n" .
    
'X-Mailer: PHP/' phpversion();
?>
Op dinsdag 9 augustus 2011 23:01 schreef SuperrrTuxxx het volgende:
Ik hou zoveel van jou, ik doe alles voor je! O+
pi_143389216
quote:
0s.gif Op woensdag 13 augustus 2014 19:54 schreef Juicyhil het volgende:

[..]

Misschien die typo hier:

$headers = "From: $fromn";
Dat komt niet door mij dat komt door de website hehe :P. Zie hier een screenshot van mijn tekst editor:



Bij die onderste twee regels staan ook zomaar een "n" achter geplakt haha, komt door de site dus.

Verder heb ik de headers ook aangepast maar alsnog krijg ik geen mailtje binnen :(. Zie hier de aanpassing:
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
// END FORM DATA ERROR HANDLING
        // Begin Insertion of data into the database
        // Hash the password and apply your own mysterious unique salt
        $cryptpass = crypt($p); //<-- dit wordt een 30 bit/characters cryptic hash
        include_once ("php_includes/randStrGen.php");
        $p_hash = randStrGen(20)."$cryptpass".randStrGen(20);
        // Add user info into the database table for the main site table
        $sql = "INSERT INTO users (username, email, password, gender, country, ip, signup, lastlogin, notescheck)       
                VALUES('$u','$e','$p_hash','$g','$c','$ip',now(),now(),now())";
        $query = mysqli_query($db_conx, $sql); //<-- Dit runt de query
        $uid = mysqli_insert_id($db_conx);
        // Establish their row in the useroptions table
        $sql = "INSERT INTO useroptions (id, username, background) VALUES ('$uid','$u','original')";
        $query = mysqli_query($db_conx, $sql);
        // Create directory(folder) to hold each user's files(pics, MP3s, etc.)
        if (!file_exists("user/$u")) { //Als de folder met de naam van de user niet bestaat, dan maken we die folder aan.
            mkdir("user/$u", 0755); //0755 zijn de folder permissies oftewel chmod
        }
        // Email the user their activation link
        $to = "$e";    
                 
        $from = "auto_responder@yomacho.host56.com"; 
        
        /*als je een email gebruikt die ook op de server(van je host (=yomacho.host56.com)) draait 
        *en waar je website ook draait. Dan ontvangt de user een email in zijn inbox en niet in zijn junkbox. */
        $subject = 'Facebook Clone Account Activation';
        $message = '<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Facebook Clone Message</title></head><body style="margin:0px;
         font-family:Tahoma, Geneva, sans-serif;"><div style="padding:10px; background:#333; font-size:24px; color:#CCC;">
         <a href="http://www.yoursitename.com"><img data-src="http://www.yoursitename.com/images/logo.png" style="visibility:hidden;" width="36" height="30" alt="Facebook Clone"
         style="border:none; float:left;"></a>yoursitename Account Activation</div><div style="padding:24px; font-size:17px;">Hello '.$u.',<br /><br />
         Click the link below to activate your account when ready:<br /><br /><a href="http://http://yomacho.host56.com/activation.php?id='.$uid.'&u='.$u.'&e='.
         $e.'&p='.$p_hash.'">Click here to activate your account now</a><br /><br />Login after successful activation using your:<br />* E-mail Address: 
         <b>'.$e.'</b></div></body></html>';

                // Geef GELDIGE adressen op
        // Een korte benaming voor jouw website
        $website_naam = 'Facebook clone';
        // Jouw eigen geldige emailadres
        $eigen_emailadres = 'auto_responder@yomacho.host56.com';
        // Een geldig emailadres voor errors
        $error_emailadres = 'superkytoz@gmail.com';
        // De naam van de verzender
        $naam_verzender = 'superky';
        // Het geldige emailadres van de afzender
        $email_verzender = 'glimer_flash@hotmail.com';
        // Een geldig emailadres of helemaal leeg laten
        $bcc_emailadres = '';
        // HTML mail? True/False
        $html = true;

        // De headers samenstellen
        $headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . "\r\n";
        $headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . "\r\n";
        $headers    .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . "\r\n";
        $headers    .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . "\r\n" : '';
        $headers    .= 'X-Mailer: PHP/' . phpversion() . "\r\n";
        $headers    .= 'X-Priority: Normal' . "\r\n";
        $headers    .= ($html) ? 'MIME-Version: 1.0' . "\r\n" : '';
        $headers    .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . "\r\n" : ''; 

        //$headers = "From: $from\n";
        //$headers .= "MIME-Version: 1.0\n";
        //$headers .= "Content-type: text/html; charset=iso-8859-1\n";
        
        //mail($to, $subject, $message, $headers);
        if(mail($to, $subject, $message, $headers)){
            echo "Email has been sent to<b> ".$to."</b>";
        }
        else{
            echo "Failed sending message to <b> ".$to."</b>.";
        }

        echo "signup_success";
        exit();
[\code]

 
  woensdag 13 augustus 2014 @ 21:51:08 #179
292596 Faux.
Fan van zichzelf
pi_143393626
ik zou al die code gewoon dumpen eigenlijk
Hier schreef tong80 het volgende:
Faux is een FOK!held, zoals dat vroeger Gellarboy en Brechtje waren. Users die je koestert.
pi_143394269
quote:
14s.gif Op woensdag 13 augustus 2014 21:51 schreef Faux. het volgende:
ik zou al die code gewoon dumpen eigenlijk
Inderdaad, gewoon zelf iets maken.
  woensdag 13 augustus 2014 @ 22:37:30 #181
187069 slacker_nl
Sicko pur sang
pi_143395737
In theory there is no difference between theory and practice. In practice there is.
pi_143396247
quote:
^O^
pi_143399449
quote:
Het is wel handig om te weten hoe het op basis niveau werkt.
Alles laten voorkauwen is niet goed als je nog een beginner bent.
  donderdag 14 augustus 2014 @ 08:25:08 #184
25889 Sitethief
Fulltime Flapdrol
pi_143403271
Bij ons in het bedrijf kregen we mail() functie alleen aan de praat als we ook een Return-Path aangaven.
Duurde even voor we daar achter waren gekomen...

1
2
$headers .= "Return-Path: <adminemail@yahoo.com>"."\n";
$headers .= "From: adminemail@yahoo.com <adminemail@yahoo.com>" . "\n";
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_143403768
quote:
0s.gif Op donderdag 14 augustus 2014 00:02 schreef totalvamp het volgende:

[..]

Het is wel handig om te weten hoe het op basis niveau werkt.
Alles laten voorkauwen is niet goed als je nog een beginner bent.
Dingen hergebruiken, dat is uiteraard niet goed als developer.

Als je echt wilt weten hoe het werkt, dan ga je al telnettend mail versturen (en RFC's lezen).
In theory there is no difference between theory and practice. In practice there is.
pi_143408267
quote:
0s.gif Op woensdag 13 augustus 2014 17:33 schreef superky het volgende:
Hoi ik heb een vraagje over een tutorial die ik ging volgen waarbij er de php mail() functie werd gebruikt. Hier is de link van de tutorial:

De php mail() functie werkt wel, omdat hij true als waarde terug geeft. Maar ik ontvang geen email als ik een account registreer. Dit had ik dus getest met de volgende stukje code:
[ code verwijderd ]

Maar ik weet nog steeds niet hoe ik dit probleem kan fixen. Kan iemand me misschien helpen?

Hier is de rest van mijn code die ik gebruik:
[ code verwijderd ]

Ook vind ik het geen probleem als iemand me wilt helpen via Skype. Omdat ik dat ook waardeer :).
Werk je op een lokale server? Je moet wel een mailserver (Tomcat) hebben en die (goed) instellen


Verder misschien een spamfilter ofzo? Je knalt ook de hele phpversion() in de headers. Lijkt me een beetje overbodig.
pi_143413048
quote:
0s.gif Op donderdag 14 augustus 2014 12:11 schreef remi1986 het volgende:

[..]

Werk je op een lokale server? Je moet wel een mailserver (Tomcat) hebben en die (goed) instellen

Verder misschien een spamfilter ofzo? Je knalt ook de hele phpversion() in de headers. Lijkt me een beetje overbodig.
Nee ik heb hem op een host staan bij 000webhost. Maar als er geen oplossing dan kan ik het beter laten. Ik ben nu toch die code aan het veranderen.
pi_143416484
quote:
0s.gif Op donderdag 14 augustus 2014 14:39 schreef superky het volgende:

[..]

Nee ik heb hem op een host staan bij 000webhost. Maar als er geen oplossing dan kan ik het beter laten. Ik ben nu toch die code aan het veranderen.
Swiftmailer was al gegeven. PHPMailer is ook nog een alternatief. Bespaart je een hoop ellende :)
pi_143418537
quote:
0s.gif Op donderdag 14 augustus 2014 12:11 schreef remi1986 het volgende:

[..]

Werk je op een lokale server? Je moet wel een mailserver (Tomcat) hebben en die (goed) instellen

Verder misschien een spamfilter ofzo? Je knalt ook de hele phpversion() in de headers. Lijkt me een beetje overbodig.
Tomcat? Apache tomcat bedoel je, das geen mailer. Verder wil je helemaal niet echt mailen in je tests. En als je dat doet wil je dat postfix oid je mail lokaal afvangt.
In theory there is no difference between theory and practice. In practice there is.
pi_143418955
quote:
0s.gif Op donderdag 14 augustus 2014 17:22 schreef slacker_nl het volgende:

[..]

Tomcat? Apache tomcat bedoel je, das geen mailer. Verder wil je helemaal niet echt mailen in je tests. En als je dat doet wil je dat postfix oid je mail lokaal afvangt.
Postfix ja klopt.

Naja of je iets wel of niet wil ga ik niet op in. Ik test iets liever een keer extra.
pi_143419168
quote:
0s.gif Op donderdag 14 augustus 2014 17:35 schreef remi1986 het volgende:
Postfix ja klopt.

Naja of je iets wel of niet wil ga ik niet op in. Ik test iets liever een keer extra.
Je gaat in je unit test niet echt mailen. Je integratietests zullen dat wel doen, maar in principe zal je in je testfiles gewoon een $mailer->send() uitvoeren en je wilt weten dat dat aangeroepen wordt, in je testfile zal je dan zelf een $mailer object hebben met dezelfde API en dan kan je daarna dingen doen als:

1
2
3
4
5
6
7
8
9
10
11
12
my $mailer = Mocked::Mailer->new();
{
    local *Mocked::Mailer::send = sub { return 1 };
    my $class = My::Class->new(mailer => $mailer);
    $class->do_mail_please();
}


    local *Mocked::Mailer::send = sub { die "I failed to send a mail" };
    my $class = My::Class->new(mailer => $mailer);
    dies_ok(sub { $class->do_mail_please(); }, qr/I failed to send a mail/, "Our mailer has died a horrible death");
}

Dat wil je weten, niet of je mailer wel werkt. Als je postfix verkeerd geconfigureerd is en je mail komt niet aan dan weet je nog niet of het aan je code ligt of aan je postfix. Das een andere test.
In theory there is no difference between theory and practice. In practice there is.
pi_143419533
quote:
0s.gif Op donderdag 14 augustus 2014 17:43 schreef slacker_nl het volgende:

[..]

Je gaat in je unit test niet echt mailen. Je integratietests zullen dat wel doen, maar in principe zal je in je testfiles gewoon een $mailer->send() uitvoeren en je wilt weten dat dat aangeroepen wordt, in je testfile zal je dan zelf een $mailer object hebben met dezelfde API en dan kan je daarna dingen doen als:
[ code verwijderd ]

Dat wil je weten, niet of je mailer wel werkt. Als je postfix verkeerd geconfigureerd is en je mail komt niet aan dan weet je nog niet of het aan je code ligt of aan je postfix. Das een andere test.
Oke, maar zo zei je dat niet.

En tevens heb je toch zo door of de fout in de code zit of niet. Kwestie van beetje kunnen debuggen.
pi_143419953
quote:
0s.gif Op donderdag 14 augustus 2014 17:56 schreef remi1986 het volgende:

[..]

Oke, maar zo zei je dat niet.

En tevens heb je toch zo door of de fout in de code zit of niet. Kwestie van beetje kunnen debuggen.
De fout zit altijd in je code, waar in je code is de vraag.. :)
In theory there is no difference between theory and practice. In practice there is.
pi_143420357
quote:
0s.gif Op donderdag 14 augustus 2014 18:11 schreef slacker_nl het volgende:

[..]

De fout zit altijd in je code, waar in je code is de vraag.. :)
prima, ga die discussie niet eens voeren ^O^
pi_143420399
quote:
0s.gif Op woensdag 13 augustus 2014 20:03 schreef superky het volgende:

Verder heb ik de headers ook aangepast maar alsnog krijg ik geen mailtje binnen :(. Zie hier de aanpassing:
[ code verwijderd ]

Headers moet je scheiden met \r\n, niet alleen \n (volgens de mailspecs). Verder is html mail lastiger dan plain text mail en zijn lange regels ook een mogelijk probleem. Dus in plaats van een kilometer aan html zou ik eerst eens een gewone korte regel als plain text versturen (en dus ook geen html headers). Als dat goed werkt, kun je stap voor stap verder gaan met complexere dingen proberen.

Mail() geeft true terug als het afleveren bij de verzendende server (die je hebt ingesteld in je php config) is gelukt. Da's vergelijkbaar met dat je iemand vraagt om een brief voor je te posten en hij reageert met "leg maar op m'n bureau". Al gaat die brief daarna rechtstreeks de papierversnipperaar in, je hebt hem wel kunnen neerleggen. En die verdere terugkoppeling krijg je niet.

Of, zoals al vaker is voorgesteld, het hele mailgebeuren uitbesteden aan iets als Swiftmailer.
pi_143421646
Iemand ervaring met codeigniter? :P
Redacted
  donderdag 14 augustus 2014 @ 20:11:02 #197
91039 mstx
2x1/2 = 1/2 x 1/2
pi_143423498
quote:
0s.gif Op donderdag 14 augustus 2014 19:14 schreef cablegunmaster het volgende:
Iemand ervaring met codeigniter? :P
:Y
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_143423581
quote:
1s.gif Op donderdag 14 augustus 2014 20:11 schreef mstx het volgende:

[..]

:Y
Korte vraag ik zat met een opvraging vraag, sql en alles hoe voer ik het in ? Daar bedoel ik mee met de complexe sql query's want je zit met een query schrijver? :? ( Inner joins ) en limits, waar de documentatie hierover te vinden is.
Redacted
  donderdag 14 augustus 2014 @ 20:29:19 #199
91039 mstx
2x1/2 = 1/2 x 1/2
pi_143424219
quote:
0s.gif Op donderdag 14 augustus 2014 20:13 schreef cablegunmaster het volgende:

[..]

Korte vraag ik zat met een opvraging vraag, sql en alles hoe voer ik het in ? Daar bedoel ik mee met de complexe sql query's want je zit met een query schrijver? :? ( Inner joins ) en limits, waar de documentatie hierover te vinden is.
Dit? https://ellislab.com/code(...)e/active_record.html
Zelf nooit gebruikt, ik vind dat echt lelijk.
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.
👾
  zaterdag 16 augustus 2014 @ 09:20:17 #200
355592 Djurres
Knowledge, Fuck it.
pi_143472272
Hoi lieve kinders. Jullie zijn vast veel beter met PHP als dat ik ben, maar toch ben ik lekker aan het hobbyen en heb een probleem.

Ik wil graag een aantal PDF bestanden (notulen) op slaan in de blob van een mysql database. Nu lukt dat allemaal aardig, en kan ik dit ook weergeven. Hier zit het probleem niet in.

Maar op het moment dat ik het bestand uit de database wil halen, dan krijg ik een File ID does not exist error. Ik heb een stukkie code van een tutorial gejat uiteraard, want ik kan nog niet van scratch beginnen. Wel snap ik de code, maar hier kan ik eigenlijk helemaal niet uitkomen.

De daadwerkelijke error die ik krijg staat in de foutafhandeling van get_file.php op lijn 40.

Hieronder de files die met het systeem te maken hebben

notulenu.php (hier staat het upload form'pje, niet echt van belang aangezien dit werkt)
add_file.php (verwerken van verstuurde notulen)
files.php (wat is er opgeslagen in de db?)
get_file.php (ophalen van de notulen uit de database)

get_file.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
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
<?php
    
// Make sure an ID was passed
    
if(isset($_GET['id'])) {
    
// Get the ID
        
$id intval($_GET['id']);
     
        
// Make sure the ID is in fact a valid ID
        
if($id <= 0) {
            die(
'The ID is invalid!');
        }
        else {
            
// Connect to the database
            
$dbLink = new mysqli('127.0.0.1''''''');
            if(
mysqli_connect_errno()) {
                die(
"MySQL connection failed: "mysqli_connect_error());
            }
     
            
// Fetch the file information
            
$query "
                SELECT `mime`, `name`, `size`, `data`
                FROM `filejtc`
                WHERE `id` = 
{$id}";
            
$result $dbLink->query($query);
     
            if(
$result) {
                
// Make sure the result is valid
                
if($result->num_rows == 1) {
                
// Get the row
                    
$row mysqli_fetch_assoc($result);
     
                  
//print headers
                    
header("Content-Type: "$row['mime']);
                    
header("Content-Length: "$row['size']);
                    
header("Content-Disposition: attachment; filename="$row['name']);
    
                    
// Print data
                    
echo $row['data'];
                }
                else {
                    echo 
'Error! No image exists with that ID.';
                }
     
                
// Free the mysqli resources
                
@mysqli_free_result($result);
            }
            else {
                echo 
"Error! Query failed: <pre>{$dbLink->error}</pre>";
            }
            @
mysqli_close($dbLink);
        }
    }
    else {
        echo 
'Error! No ID was passed.';
    }
    
?>

files.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
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
<?php
    
// Connect to the database
    
$dbLink = new mysqli('127.0.0.1''''''');
    if(
mysqli_connect_errno()) {
        die(
"MySQL connection failed: "mysqli_connect_error());
    }
     
    
// Query for a list of all existing files
    
$sql 'SELECT `id`, `name`, `mime`, `size`, `created` FROM `filejtc`';
    
$result $dbLink->query($sql);
     
    
// Check if it was successfull
    
if($result) {
        
// Make sure there are some files in there
        
if($result->num_rows == 0) {
            echo 
'<p>Er zitten nog geen bestanden in de database!</p>';
        }
        else {
            
// Print the top of a table
            
echo '<table width="100%">
                    <tr>
                        <td><b>Naam:</b></td>
                        <td><b>Soort bestand:</b></td>
                        <td><b>Grootte (bytes)</b></td>
                        <td><b>Aangemaakt</b></td>
                        <td><b>&nbsp;</b></td>
                    </tr>'
;
     
            
// Print each file
            
while($row $result->fetch_assoc()) {
                echo 
"
                    <tr>
                        <td>
{$row['name']}</td>
                        <td>
{$row['mime']}</td>
                        <td>
{$row['size']}</td>
                        <td>
{$row['created']}</td>
                        <td><a href='get_file.php?id=
{$row['id']}'>Download</a></td>
                    </tr>"
;
            }
     
            
// Close table
            
echo '</table>';
        }
     
        
// Free the result
        
$result->free();
    }
    else
    {
        echo 
'Error! SQL query failed:';
        echo 
"<pre>{$dbLink->error}</pre>";
    }
     
    
// Close the mysql connection
    
$dbLink->close();
    
?>

add_file.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
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
    <?php
    
// Check if a file has been uploaded
    
if(isset($_FILES['uploaded_file'])) {
        
// Make sure the file was sent without errors
        
if($_FILES['uploaded_file']['error'] == 0) {
            
// Connect to the database
            
$dbLink = new mysqli('''''''');
            if(
mysqli_connect_errno()) {
                die(
"MySQL connection failed: "mysqli_connect_error());
            }
     
            
// Gather all required data
            
$name $dbLink->real_escape_string($_FILES['uploaded_file']['name']);
            
$mime $dbLink->real_escape_string($_FILES['uploaded_file']['type']);
            
$data $dbLink->real_escape_string(file_get_contents($_FILES  ['uploaded_file']['tmp_name']));
            
$size intval($_FILES['uploaded_file']['size']);
     
            
// Create the SQL query
            
$query "
                INSERT INTO `filejtc` (
                    `name`, `mime`, `size`, `data`, `created`
                )
                VALUES (
                    '
{$name}', '{$mime}', {$size}, '{$data}', NOW()
                )"
;
     
            
// Execute the query
            
$result $dbLink->query($query);
     
            
// Check if it was successfull
            
if($result) {
                echo 
'Succes! Het bestand is toegevoegt aan de database!';
            }
            else {
                echo 
'Error! Er is wat fout gegaan bij het invoegen aan de database! Probeer opnieuw!'
                   
"<pre>{$dbLink->error}</pre>";
            }
        }
        else {
            echo 
'Er is wat fout gegaan tijdens het uploaden, probeer opnieuw! '
               
'Error code: 'intval($_FILES['uploaded_file']['error']);
        }
     
        
// Close the mysql connection
        
$dbLink->close();
    }
    else {
        echo 
'Error! Er is geen bestand geselecteerd!';
    }
     
    
// Echo a link back to the main page
    
echo '<p>Klik <a href="../jtc/files.php">HIER</a> om verder te gaan!</p>';
    
?>


[ Bericht 9% gewijzigd door Djurres op 16-08-2014 10:28:41 ]
Tadumtiedum.
pi_143472484
Eerst een tip: gebruik de [php] en [/php] tags voor php, in plaats van [code] en [/code].
  zaterdag 16 augustus 2014 @ 10:19:59 #202
187069 slacker_nl
Sicko pur sang
pi_143472958
Tweede tip, als je died, dan hoef je geen else meer te gebruiken, dan heb je minder levels van indentation en das fijner om te lezen.
Derde tip, maak er functies van ipv losse files voor een functie. En maak er een klasse van.
In theory there is no difference between theory and practice. In practice there is.
  zaterdag 16 augustus 2014 @ 10:20:01 #203
355592 Djurres
Knowledge, Fuck it.
pi_143472960
Ga ik effe editten!
Tadumtiedum.
  zaterdag 16 augustus 2014 @ 10:30:04 #204
355592 Djurres
Knowledge, Fuck it.
pi_143473125
Heb t ge-edit, stond ook perongeluk 2x de zelfde code's :P

Maaru, even.. Heb het e.e.a geedit aan dit script, maar t meeste is copypaste werk.

Dat als ik die, dat ik geen else meer hoef te gebruiken ga ik even fixen, maar dat stukje functies, zou iemand daar mee me opweg kunnen helpen?
Tadumtiedum.
pi_143473217
Wat betreft de foutmelding lijkt me het vrij simpel: je vraagt een id op die niet in de database voorkomt. Je vraagt het als het goed is op zo'n manier op: http://www.website.nl/get_file.php?id=1 Komt dat id wel voor in je database? Zo niet dan is daar je probleem ;)
------___------ 53
----.(___).---- 42
---(o\_!_/o)---
  zaterdag 16 augustus 2014 @ 11:44:50 #206
355592 Djurres
Knowledge, Fuck it.
pi_143474523
Zo ver was ik ook nog :p

Ja, het ID komt in de database voor, dat is het probleem.
Tadumtiedum.
pi_143474873
quote:
0s.gif Op zaterdag 16 augustus 2014 11:44 schreef Djurres het volgende:
Zo ver was ik ook nog :p

Ja, het ID komt in de database voor, dat is het probleem.
Dus de query slaagt en het aantal resultaten is niet 1. Hoeveel resultaten zijn er dan wel?
En weet je zeker dat je met de goede database verbindt, en dat er niet nog een andere database is waar dezelfde tabel in staat zonder het gezochte id?
  zaterdag 16 augustus 2014 @ 12:51:34 #208
355592 Djurres
Knowledge, Fuck it.
pi_143476042
quote:
0s.gif Op zaterdag 16 augustus 2014 12:02 schreef Light het volgende:

[..]

Dus de query slaagt en het aantal resultaten is niet 1. Hoeveel resultaten zijn er dan wel?
En weet je zeker dat je met de goede database verbindt, en dat er niet nog een andere database is waar dezelfde tabel in staat zonder het gezochte id?
Even korte uitleg, het systeem is voor een X aantal comissies binnen een vereniging. De bedoeling is dat men de notulen hier upload zodat alles openbaar word voor alle commissies binnen de vereniging.

Om deze niet door elkaar te halen, heb ik meerdere tables binnen 1 db aangemaakt, voor iedere commissie, een table.

Na gecontroleerd te hebben of dit klopt, klopt dit allemaal. Ik heb namelijk ook een scriptje die de laatste 3 geuploadde notulen laat zien. Heb in iedere afdeling even een apart bestandje geupload, en wat me opvalt is dat als er 1 bestandje in staat, dat ik hem kan downloaden, alleen word er een verkeerde extensie mee gegeven. (zo ziet ie .doc als een .exe bestand oid.) Bij een .txt. of .pdf is er niets aan de hand.

Op het moment dat ik MEERDERE bestanden in de db heb staan kan hij de id's niet meer terug vinden, en krijg ik dus geen download.
Tadumtiedum.
pi_143481054
quote:
0s.gif Op zaterdag 16 augustus 2014 12:51 schreef Djurres het volgende:

[..]

Even korte uitleg, het systeem is voor een X aantal comissies binnen een vereniging. De bedoeling is dat men de notulen hier upload zodat alles openbaar word voor alle commissies binnen de vereniging.

Om deze niet door elkaar te halen, heb ik meerdere tables binnen 1 db aangemaakt, voor iedere commissie, een table.

Na gecontroleerd te hebben of dit klopt, klopt dit allemaal. Ik heb namelijk ook een scriptje die de laatste 3 geuploadde notulen laat zien. Heb in iedere afdeling even een apart bestandje geupload, en wat me opvalt is dat als er 1 bestandje in staat, dat ik hem kan downloaden, alleen word er een verkeerde extensie mee gegeven. (zo ziet ie .doc als een .exe bestand oid.) Bij een .txt. of .pdf is er niets aan de hand.

Op het moment dat ik MEERDERE bestanden in de db heb staan kan hij de id's niet meer terug vinden, en krijg ik dus geen download.
Klinkt alsof je het niet goed hebt opgelost. 3 aparte tabellen is sowieso niet nodig. Je kunt afdelingen makkelijk scheiden aan de hand van een id.

Voorderest lastog te helpen zonder code ;)
pi_143483268
quote:
1s.gif Op zaterdag 16 augustus 2014 16:08 schreef totalvamp het volgende:

[..]

Klinkt alsof je het niet goed hebt opgelost. 3 aparte tabellen is sowieso niet nodig. Je kunt afdelingen makkelijk scheiden aan de hand van een id.

Voorderest lastog te helpen zonder code ;)
Dat. En bestanden opslaan in de database is eigenlijk nooit een goed idee. Bestanden kunnen prima door een file system worden opgeslagen (die is daarvoor), zolang je het maar buiten de webroot doet. Dan hoef je in de db alleen op te slaan wat je als naam hebt gebruikt. De locatie is iets dat gewoon geconfigureerd kan worden en in code hoort.
  zaterdag 16 augustus 2014 @ 17:38:36 #211
355592 Djurres
Knowledge, Fuck it.
pi_143483372
quote:
0s.gif Op zaterdag 16 augustus 2014 17:35 schreef Light het volgende:

[..]

Dat. En bestanden opslaan in de database is eigenlijk nooit een goed idee. Bestanden kunnen prima door een file system worden opgeslagen (die is daarvoor), zolang je het maar buiten de webroot doet. Dan hoef je in de db alleen op te slaan wat je als naam hebt gebruikt. De locatie is iets dat gewoon geconfigureerd kan worden en in code hoort.
En dat is het probleem, ik heb nergens geen ruimte buiten de webroot, dus vandaar in de DB. Nu komen er geen spannende dingen in te staan maar het moet natuurlijk wel veilig blijven,

Code staat een pagina terug ;)

quote:
1s.gif Op zaterdag 16 augustus 2014 16:08 schreef totalvamp het volgende:

[..]

Klinkt alsof je het niet goed hebt opgelost. 3 aparte tabellen is sowieso niet nodig. Je kunt afdelingen makkelijk scheiden aan de hand van een id.

Voorderest lastog te helpen zonder code ;)
Code staat een pagina hiervoor ;)
Tadumtiedum.
pi_143485567
quote:
0s.gif Op zaterdag 16 augustus 2014 17:38 schreef Djurres het volgende:

[..]

En dat is het probleem, ik heb nergens geen ruimte buiten de webroot, dus vandaar in de DB. Nu komen er geen spannende dingen in te staan maar het moet natuurlijk wel veilig blijven,

Code staat een pagina terug ;)

[..]

Code staat een pagina hiervoor ;)
zelfs shared-hosting heeft vaak een public_html ( achtige ), met daaronder een mapje waar je domein staat, hier kun je best een mapje in donderen :-)

Verder kun je bijvoorbeeld afbeeldingen die toch al publiekelijk beschikbaar moeten zijn natuurlijk gewoon in de public folders kieperen.

let wel, dat je je configuratie bestanden niet zomaar van buiten beschikbaar maakt.

je zou even kunnen kijken naar htaccess, daarmee zou je eventueel ook het probleem van folders op kunnen lossen door ze te 'verbieden' ;-)
Vooral dat wat hier boven staat.
  zondag 17 augustus 2014 @ 11:15:57 #213
355592 Djurres
Knowledge, Fuck it.
pi_143503283
quote:
7s.gif Op zaterdag 16 augustus 2014 18:48 schreef amvrosios het volgende:

[..]

zelfs shared-hosting heeft vaak een public_html ( achtige ), met daaronder een mapje waar je domein staat, hier kun je best een mapje in donderen :-)

Verder kun je bijvoorbeeld afbeeldingen die toch al publiekelijk beschikbaar moeten zijn natuurlijk gewoon in de public folders kieperen.

let wel, dat je je configuratie bestanden niet zomaar van buiten beschikbaar maakt.

je zou even kunnen kijken naar htaccess, daarmee zou je eventueel ook het probleem van folders op kunnen lossen door ze te 'verbieden' ;-)
Ah, okay.

Maar, kan je me uitleggen waarom je dit beter niet in een database kan zetten? Hack gevoelig?

Ik heb namelijk cookiestealing, xss geprobeerd, en
mysql injection geprobeert op onderandere de get_page?id=4 enzo, heb nergens een leak of gat gevonden..
Tadumtiedum.
pi_143504127
quote:
0s.gif Op zondag 17 augustus 2014 11:15 schreef Djurres het volgende:

[..]

Ah, okay.

Maar, kan je me uitleggen waarom je dit beter niet in een database kan zetten? Hack gevoelig?

Ik heb namelijk cookiestealing, xss geprobeerd, en
mysql injection geprobeert op onderandere de get_page?id=4 enzo, heb nergens een leak of gat gevonden..
1
2
3
4
5
6
7
<?php
$query 
"
                SELECT `mime`, `name`, `size`, `data`
                FROM `filejtc`
                WHERE `id` = 
{$id}";
           
?>

Ik denk dat de fout hierin zit. Of doet die query functie iets met die {} rondom de variabele?


En verder wordt het id niet escaped. SQL injectie gevoelig dus.
pi_143504740
quote:
0s.gif Op zondag 17 augustus 2014 11:48 schreef remi1986 het volgende:

[..]
[ code verwijderd ]

Ik denk dat de fout hierin zit. Of doet die query functie iets met die {} rondom de variabele?

En verder wordt het id niet escaped. SQL injectie gevoelig dus.
Die {} kun je gebruiken om variabelen op te nemen in een string. Voor $id is het op zich niet nodig maar als je bijvoorbeeld $object->id wilt opnemen in een string dan kun je dat doen door er accolades omheen te zetten {$object->id} in de string.

En wat het escapen van de id betreft, eerder in de code staat dit:
1
2
3
<?php
$id 
intval($_GET['id']);
?>
------___------ 53
----.(___).---- 42
---(o\_!_/o)---
pi_143544758
Heeft iemand hier MySQL partitioning gebruikt voor grotere datasets?

Ik wil ongeveer 11 GB aan gegevens per jaar per gebruiker opslaan, na deze periode worden ze verwijderd. Is het ontbreken van FKs een groot nadeel in de praktijk wanneer partitioning wordt gebruikt?
When the student is ready, the teacher will appear.
When the student is truly ready, the teacher will disappear.
  dinsdag 19 augustus 2014 @ 19:47:12 #217
355592 Djurres
Knowledge, Fuck it.
pi_143601930
laat maar! Heb het helemaal zelf opgelost :D

[ Bericht 97% gewijzigd door Djurres op 19-08-2014 21:08:25 ]
Tadumtiedum.
pi_143606622
quote:
0s.gif Op zondag 17 augustus 2014 11:15 schreef Djurres het volgende:

[..]

Ah, okay.

Maar, kan je me uitleggen waarom je dit beter niet in een database kan zetten? Hack gevoelig?

Ik heb namelijk cookiestealing, xss geprobeerd, en
mysql injection geprobeert op onderandere de get_page?id=4 enzo, heb nergens een leak of gat gevonden..
je wilt configuratie bestanden simpelweg niet in het public gedeelte hebben staan omdat je maar een keer pech hoeft te hebben en de hele wereld heeft je configuratie in handen.

het uitdelen van bestanden via een database is simpelweg een belachelijk idee omdat een database daar niet op gebouwd is ( sterker nog, het wordt er alleen maar kutter op )
Vooral dat wat hier boven staat.
  dinsdag 19 augustus 2014 @ 22:14:27 #219
292596 Faux.
Fan van zichzelf
pi_143609502
quote:
0s.gif Op dinsdag 19 augustus 2014 19:47 schreef Djurres het volgende:
laat maar! Heb het helemaal zelf opgelost :D
Laat je post staan dan, zodat anderen ervan kunnen leren
Hier schreef tong80 het volgende:
Faux is een FOK!held, zoals dat vroeger Gellarboy en Brechtje waren. Users die je koestert.
pi_143610481
quote:
18s.gif Op dinsdag 19 augustus 2014 22:14 schreef Faux. het volgende:

[..]

Laat je post staan dan, zodat anderen ervan kunnen leren
Dit is zo hinderlijk

Heb je bv. Een niet heel bekend probleem, ga je googlen en dan is het eerste resultaat een betaald forum met "experts" en het tweede resultaat is "edit: Nevermind, got it working"

:(
pi_143613908
quote:
0s.gif Op dinsdag 19 augustus 2014 19:47 schreef Djurres het volgende:
laat maar! Heb het helemaal zelf opgelost :D
:P je configuratie veranderd naar getenv('geheimding') en deze environment variabelen buiten je document root geset?
  woensdag 20 augustus 2014 @ 12:33:49 #222
355592 Djurres
Knowledge, Fuck it.
pi_143624388
Sorrysorrysorry, was een oplossing betreft een andere vraag, had wat problemen met checkboxes en de mail functie, bovenstaand probleem is nog niet opgelost maar had dm van iemand gekregen en dat gaat k ff proberen :)
Tadumtiedum.
pi_143641307
Ik ben even benieuwd hoe jullie het volgende probleem zouden tackelen.
Het gaat om een zoekfunctie, waarbij synoniemen van bepaalde woorden ook gematched moeten worden.

Voorbeeld;

Een gebruiker zoekt op "appel", alle soorten gerechten waarbij appel in het Naam veld voorkomt moeten getoond worden.

Echter is er een tabel waarin staat dat er de volgende synoniemen zijn voor het woord appel: "banaan" en "peer".

Wanneer een gebruiker dus zoekt op bijv. "peer" moeten ook de resultaten terug komen die een gebruiker zou krijgen wanneer deze op "appel" had gezocht.
pi_143647768
quote:
19s.gif Op woensdag 20 augustus 2014 20:01 schreef TwenteFC het volgende:
Ik ben even benieuwd hoe jullie het volgende probleem zouden tackelen.
Het gaat om een zoekfunctie, waarbij synoniemen van bepaalde woorden ook gematched moeten worden.

Voorbeeld;

Een gebruiker zoekt op "appel", alle soorten gerechten waarbij appel in het Naam veld voorkomt moeten getoond worden.

Echter is er een tabel waarin staat dat er de volgende synoniemen zijn voor het woord appel: "banaan" en "peer".

Wanneer een gebruiker dus zoekt op bijv. "peer" moeten ook de resultaten terug komen die een gebruiker zou krijgen wanneer deze op "appel" had gezocht.
Kan het ook zijn dat hetzelfde woord meerdere synoniemen kent? Dat "peer" bijvoorbeeld ook iets kan zijn uit een hele andere context en dus niet bij de soorten fruit hoort?

[ Bericht 1% gewijzigd door #ANONIEM op 20-08-2014 22:34:00 ]
pi_143648928
quote:
0s.gif Op woensdag 20 augustus 2014 22:31 schreef robin007bond het volgende:

[..]

Kan het ook zijn dat hetzelfde woord meerdere synoniemen kent? Dat "peer" bijvoorbeeld ook iets kan zijn uit een hele andere context en dus niet bij de soorten fruit hoort?
Ja, ook dat nog.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')