Welkom, Gast. Je bent niet ingelogd.

PHPbattle Nieuwssysteem

Inuyasha
Wie anders? ^^
Geplaatst op: 11 Oct 2007, 19:42
PimpCoins: 0
💸+
Bewerken Quote

Eindelijk eens wat hoogstaands.
Veel succes met php'en.

Maarten
Geplaatst op: 11 Oct 2007, 20:00
PimpCoins: 0
💸+
Bewerken Quote

Syncie schreef:

[...]
1 - 0 Voor Yannick, jouw code is alles behalve OVERZICHTELIJK, en snel. Op Yannick zijn code valt een stuk minder aan te merken dan op die van jou.
In het begin open je PHP, je sluit PHP en je opend PHP, mis ik hier wat of is dat nutteloos?
Ik zie session_start() terwijl Yannick dat al in de index heeft geplaatst.
Ik mis spaties/enters.
Ik mis het escapen van het IP van de gebruiker.
Je haalt veel te veel op bij een query terwijl je veel minder nodig hebt, lekker sloom dus.
Je gebruikt eregi i.p.v. pcre.
Je gebruikt output buffering(ob_start) terwijl dit niet nodig is, dit kost ook tijd.
Dit was het zo ff snel.

Syncie is dus de jury .

Syncie
Geplaatst op: 11 Oct 2007, 20:02
PimpCoins: 0
💸+
Bewerken Quote

Maarten schreef:

[...]
Syncie is dus de jury .

Uiteraard
Eindelijk eens wat PHP, een leuke battle, dan volg ik dat wel.

[Laatst bewerkt door Syncie op donderdag 11 oktober 2007, om 20:02]
Sharp
:')
moderator
Geplaatst op: 11 Oct 2007, 20:44
PimpCoins: 0
💸+
Bewerken Quote

1
2
3
4
<link href="<?=$config['SiteAdres']?>css/main.css" rel="stylesheet" type="text/css" />
  <script src="<?=$config['SiteAdres']?>js/script.js" type="text/javascript"></script>
  <script src="<?=$config['SiteAdres']?>js/ajax.js" type="text/javascript"></script>
  <script src="<?=$config['SiteAdres']?>js/prototype.js" type="text/javascript"></script>

Wtf heb je hieraan als je nog maar net bent begonnen en die scripts niet eens hebt?

Thaan
Aka "Gerwin"
moderator
Geplaatst op: 11 Oct 2007, 21:01
PimpCoins: 0
💸+
Bewerken Quote

Wat ik op Syncie nog toe te voegen heb:

Joris, waarom in hemelsnaam je MySQL wachtwoord Base64 encoden? Dat is echt de meest nutteloze encode die ik in tijden heb gezien.

Rakka
Heb je mij weer
Geplaatst op: 11 Oct 2007, 21:24
PimpCoins: 0
💸+
Bewerken Quote

Wat een heerlijk eenvoudig topic

Joris
moderator
Geplaatst op: 11 Oct 2007, 21:29
PimpCoins: 0
💸+
Bewerken Quote

Thaan schreef:

Wat ik op Syncie nog toe te voegen heb:

Joris, waarom in hemelsnaam je MySQL wachtwoord Base64 encoden? Dat is echt de meest nutteloze encode die ik in tijden heb gezien.

Voor als er vrienden en/of andere mensen zijn, die op mijn scherm meekijken, wat regelmatig gebeurt

En al die JS dingen zijn voor Ajax. Dat komt later nog allemaal.

Thaan
Aka "Gerwin"
moderator
Geplaatst op: 11 Oct 2007, 21:44
PimpCoins: 0
💸+
Bewerken Quote

Joris schreef:

[...]

Voor als er vrienden en/of andere mensen zijn, die op mijn scherm meekijken, wat regelmatig gebeurt

En al die JS dingen zijn voor Ajax. Dat komt later nog allemaal.


Sorry maar dat vind ik zoeen slecht argument. Nouen dat zij dat wachtwoord weten, gebruik je dat soms ook voor je msn ofzo? Daarnaast, als je eenmaal je config bestand af hebt, hoef je daar niet meer in te komen. Beetje raar, maar oke.

Nanne
Doe een wens!
Geplaatst op: 11 Oct 2007, 23:18
PimpCoins: 0
💸+
Bewerken Quote

Het is maar een tip. Als je een hele grote site maakt en je wilt het goed beveiligen moet je voor mysql meerdere gebuikers gebruiken. Dus eentje voor nieuws eentje voor de gebruikers. Je kan met php meerdere mysql verbindingen tegelijk hebben. Zoals:
$Mysql['nieuws'] = mysql_connect( gegevens nieuws gebruiker ) or die(mysql_error());
$Mysql['leden'] = mysql_connect( gegevens leden gebruiker ) or die(mysql_error());

En dan natuurlijk verschillende wachtwoorden gebruiken.

[Laatst bewerkt door Nanne op donderdag 11 oktober 2007, om 23:18]
Badeendje
Pompehdompehdom
moderator
Geplaatst op: 12 Oct 2007, 09:17
PimpCoins: 0
💸+
Bewerken Quote

mwa, dat vindt ik zwaar overdreven hoor nanne, gewoon een ander resultaat kiezen uit dezelfde table/andere table is goed genoeg.
en daarbij sommige hostings hanteren een maximum aan connecties.

Badeendje
Pompehdompehdom
moderator
Geplaatst op: 12 Oct 2007, 09:27
PimpCoins: 0
💸+
Bewerken Quote

Vanmiddag komt mijn zet: de news class, ik zit te twijfelen of ik voor die 1 persoon login ook een class zou maken ivm bruteforce beveiliging. Achja, we zien wel vanmiddag

Syncie
Geplaatst op: 12 Oct 2007, 18:45
PimpCoins: 0
💸+
Bewerken Quote

Badeendje:
Code quote:

1
2
3
4
5
6
7
8
9
10
11
12
<?php

//----------------------------------------- 
// Check PHP Version 
//----------------------------------------- 
if(!version_compare(phpversion(), '5.0.0', '>=')){ 
     
    die('<b style="color:#FF0000">Critische systeem error:</b> De PHP Versie geinstalleerd op deze server(' . phpversion() . ') is niet hoog genoeg om dit systeem te draaien, PHP 5.0.0 is minstens benodigd.'); 
     
}

?>

Tekst quote:Dat is gewoon een error die tevoorschijn komt indien php lager is dan 5.2.0 .

In je code staat 5.0.0 i.p.v. 5.2.0, moet je daar niet 5.2.0 van maken? Ik denk dat je dat bedoeld omdat jij ook filter_* functies gebruikt en die pas vanaf PHP 5.2.0 beschikbaar zijn.

[Laatst bewerkt door Syncie op vrijdag 12 oktober 2007, om 18:45]
Badeendje
Pompehdompehdom
moderator
Geplaatst op: 12 Oct 2007, 18:49
PimpCoins: 0
💸+
Bewerken Quote

Syncie schreef:

Badeendje:
Code quote:

[...]

Tekst quote:Dat is gewoon een error die tevoorschijn komt indien php lager is dan 5.2.0 .

In je code staat 5.0.0 i.p.v. 5.2.0, moet je daar niet 5.2.0 van maken? Ik denk dat je dat bedoeld omdat jij ook filter_* functies gebruikt en die pas vanaf PHP 5.2.0 beschikbaar zijn.

oeps inderdaad je hebt gelijk

Syncie
Geplaatst op: 12 Oct 2007, 18:53
PimpCoins: 0
💸+
Bewerken Quote

Waarom geef je in je MySQL de scope protected mee aan wat variabelen terwijl er geen class is die de MySQL class overerft? De scope protected zorgt ervoor dat een bepaalde variabele beschikbaar is in de parent- en childklasse maar er is hier geen childklasse. Daarom zou ik private doen i.p.v. protected.

En wat mij beter lijkt i.p.v. jouw MySQL class is PDO(PHP Data Objects) dit is een soort van database class die al in PHP zit, hierin zitten vele handige functies. Je kunt errorhandling doen met de ook al in PHP ingebouwde klasse PDOException. Dus met try & catch.

sandr
aka Chuck Norris
Geplaatst op: 12 Oct 2007, 21:08
PimpCoins: 0
💸+
Bewerken Quote

Syncie schreef:

Waarom geef je in je MySQL de scope protected mee aan wat variabelen terwijl er geen class is die de MySQL class overerft? De scope protected zorgt ervoor dat een bepaalde variabele beschikbaar is in de parent- en childklasse maar er is hier geen childklasse. Daarom zou ik private doen i.p.v. protected.

En wat mij beter lijkt i.p.v. jouw MySQL class is PDO(PHP Data Objects) dit is een soort van database class die al in PHP zit, hierin zitten vele handige functies. Je kunt errorhandling doen met de ook al in PHP ingebouwde klasse PDOException. Dus met try & catch.


Je bent m nou wel aan het helpen, ik denk niet dat dat helemaal eerlijk is .

Badeendje
Pompehdompehdom
moderator
Geplaatst op: 12 Oct 2007, 21:19
PimpCoins: 0
💸+
Bewerken Quote

Dat is het commentaar, wat noem je Deze post voor joris dan... ?

Maarten
Geplaatst op: 12 Oct 2007, 21:29
PimpCoins: 0
💸+
Bewerken Quote

sandr schreef:

[...]
Je bent m nou wel aan het helpen, ik denk niet dat dat helemaal eerlijk is .

Waarom niet, door aan te geven wat slecht is kun je kijken wie er beter gescript heeft.

sandr
aka Chuck Norris
Geplaatst op: 13 Oct 2007, 10:25
PimpCoins: 0
💸+
Bewerken Quote

Badeendje schreef:

Dat is het commentaar, wat noem je Deze post voor joris dan... ?

mja da's ook weer zoeits, maar je maakt het nu niet egt helemaal alleen

Dharion
Eat fur, bonehead!
Geplaatst op: 13 Oct 2007, 10:39
PimpCoins: 0
💸+
Bewerken Quote

Tuurlijk wel, het is helemaal zelf gescript, en als members wat fouten en slecht gescripte stukjes zien, mogen ze er rustig wat van zeggen...

Joris
moderator
Geplaatst op: 13 Oct 2007, 11:20
PimpCoins: 0
💸+
Bewerken Quote

Ik ben er weer En ga vanavond weer scripten: het nieuwssysteem en loginsysteem. Ik weet niet precies hoe en wat allemaal maar ik denk dat ik vanavond het loginsysteem al klaar heb

greetz

Firebird
Zo zit dat.
Geplaatst op: 13 Oct 2007, 11:33
PimpCoins: 0
💸+
Bewerken Quote

Joris schreef:

Ik ben er weer En ga vanavond weer scripten: het nieuwssysteem en loginsysteem. Ik weet niet precies hoe en wat allemaal maar ik denk dat ik vanavond het loginsysteem al klaar heb

greetz


We zijn benieuwd.

Dharion
Eat fur, bonehead!
Geplaatst op: 13 Oct 2007, 11:53
PimpCoins: 0
💸+
Bewerken Quote

Firebird schreef:

[...]
We zijn benieuwd.

Inderdaad xD

Joris
moderator
Geplaatst op: 13 Oct 2007, 12:17
PimpCoins: 0
💸+
Bewerken Quote

Ohja:

[url]http://www.sitedeals.nl/itrader.php?u=4040[/url]

Voor de mensen die denken dat ik slecht handel
Ik heb al veel meer zaken afgehandeld maar dit zijn er 12 vanwie ik een feedback gekregen heb.

Bovendien, zoals sommige mensen hier beweren, bied ik GEEN gratis scripts en/of warez aan maar ben ik (onterecht) verbannen op TB omdat ik een link naar mijn site zette!

[Laatst bewerkt door Joris op zondag 28 oktober 2007, om 15:23]
Inuyasha
Wie anders? ^^
Geplaatst op: 13 Oct 2007, 12:24
PimpCoins: 0
💸+
Bewerken Quote

Joris schreef:

Ohja:

[url]http://www.sitedeals.nl/itrader.php?u=4040[/url]

Voor de mensen die denken dat ik slecht handel
Ik heb al veel meer zaken afgehandeld maar dit zijn er 12 vanwie ik een feedback gekregen heb.


Nou, de meeste positieve commentaren bevatten toch rake klappen. Echt betrouwbaar kom je niet over.

Badeendje
Pompehdompehdom
moderator
Geplaatst op: 13 Oct 2007, 18:46
PimpCoins: 0
💸+
Bewerken Quote

Ik heb aan de mysql class nog eventjes niets gedaan, dat denk ik waarschijnlijk op het laatst te doen.
Hier in ieder geval de basis versie van de news class:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php

/**
 * @author badeendje
 * @copyright 2007
 */

if(!defined('SAFE')){
    
    die('<pre>Geen toegang.</pre>');
    
}

class news {
    
    function add($title, $content, $user){
        
        global $db;
        
        $ntitle        =    safedb($title);
        $ncontent    =    safedb($content);
        $nuser        =    safedb($user);
        
        $db->query("
            INSERT INTO 
                news 
            SET
                title    =    '" . $ntitle . "',
                content    =    '" . $ncontent . "',
                user    =    '" . $nuser . "',
                time    =    '" . time() . "'");
                
        return 'OK:';
        
    }
    
    function del($id){
        
        global $db;
        
        $qcheck = $db->query("SELECT id FROM news WHERE id='" . safedb($id) . "'");
        $ncheck = $db->numRows($qcheck);
        
        if($ncheck != 0){
            
            $db->query("DELETE FROM news WHERE id='" . safedb($id) . "'");
            return 'OK:';
            
        }else{
            
            return 'FAIL:NotExists';
            
        }
        
    }
    
    function edit($id, $title, $content, $user){
        
        global $db;
        
        $ntitle        =    safedb($title);
        $ncontent    =    safedb($content);
        $nuser        =    safedb($user);    
            
        $qcheck = $db->query("SELECT id FROM news WHERE id='" . safedb($id) . "'");
        $ncheck = $db->numRows($qcheck);
        
        if($ncheck != 0){
            
            $db->query("
                    UPDATE
                        news 
                    SET
                        title    =    '" . $ntitle . "',
                        content    =    '" . $ncontent . "',
                        user    =    '" . $nuser . "'
                    WHERE 
                        id='" . safedb($id) . "'");
            return 'OK:';
            
        }else{
            
            return 'FAIL:NotExists';
            
        }
                
    }
    
}

?>

Verder een functions.inc.php:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php

/**
 * @author Badeendje
 * @copyright 2007
 */

function safedb($str){
    
    global $db;
        
    return mysql_real_escape_string($str, $db->connection);    
    
}

function out($str){
    
    return trim(htmlentities(stripslashes($str), ENT_QUOTES));
    
}

?>

en door die aan te roepen is de index natuurlijk ook wat gewijzigd, maar dat zijn maar 2 require'tjes meer en een classe meer. dus dat is nog niet de moeite om dat weer helemaal te posten.
Globals zijn niet zo sexy weet ik, maar daar ga ik nog is over brainstorme wat ik daarmee ga doen.

[Laatst bewerkt door Badeendje op zaterdag 13 oktober 2007, om 18:51]
📫

Nieuw privébericht

🔥

Registreren


Login