Welkom, Gast. Je bent niet ingelogd.

PHPbattle Nieuwssysteem

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

Hey,

Ik heb zojuist pm van Joris teruggehad, dat hij meedoet aan de PHP Battle.

Dit battle-idee is gekomen aan de hand van de [GEZOCHT] site als sitedeals-Topic van Joris.

Wat gaan we maken bij deze battle?
Zoals je uit de titel kan opmaken, een Nieuwsysteem natuurlijk, dat is niet echt duidelijk.
Dus hier de specificaties voor het Nieuwssysteem:

-adminpanel

  • [*]login voor 1 persoon(met brute force beveiliging) - MAAR: er mag geen mysql gebruikt worden bij deze login.
  • [*]nieuwsoverzicht
  • [*]nieuwsedit
  • [*]nieuwsdel
  • [*]nieuwstoevoegen


-site

  • [*]overzicht
  • [*]lees meer

Joris heeft duidelijk aangegeven dat hij wel geruimte tijd wil hebben voor het programmeren ivm tijd voor zijn studie, dus respecteer dit aub.

Ik zal de eerste zet doen, door in mijn volgende post in deze topic het script te plaatsen.

Jullie mogen commentaar op ieder die meedoet aan deze battle commentaar geven.

Groeten Badeendje

Guz
Housejunkie
moderator
Geplaatst op: 11 Oct 2007, 17:29
PimpCoins: 0
💸+
Bewerken Quote

Succes jongens

Bavaria
Ik ben een kuikentje
Geplaatst op: 11 Oct 2007, 17:34
PimpCoins: 0
💸+
Bewerken Quote

Is het niet eerlijker om alles naar een onafhankelijk persoon te pmen en las iedereen klaar is dat die onafhankelijk persoon dan pas de scripts post? Want als iemand toevallig (!) iets hetzelfde heeft maar iemand anders post het eerder gaat iedereen zitten bashen van, ja maar dat had hij al eerder enz...

Maarten
Geplaatst op: 11 Oct 2007, 17:36
PimpCoins: 0
💸+
Bewerken Quote

Veel succes .

[Laatst bewerkt door Maarten op donderdag 11 oktober 2007, om 17:37]
Basjee
Octo
Geplaatst op: 11 Oct 2007, 17:38
PimpCoins: 0
💸+
Bewerken Quote

PHPPlay = samen, PHPBattle = tegen elkaar..

Wat is het nu?

Riciboy
GewoonBriljant
Geplaatst op: 11 Oct 2007, 17:40
PimpCoins: 0
💸+
Bewerken Quote

Zodra ik begrijp wat bruteforce beveiliging is wil ik wel meedoen als het kan

edit : joehoee 300 berichtjes

[Laatst bewerkt door Riciboy op donderdag 11 oktober 2007, om 17:41]
Badeendje
Pompehdompehdom
moderator
Geplaatst op: 11 Oct 2007, 17:44
PimpCoins: 0
💸+
Bewerken Quote

Basjee schreef:

PHPPlay = samen, PHPBattle = tegen elkaar..

Wat is het nu?

Foutje PHPBattle, ik wijzig de titel al

Riciboy schreef:

Zodra ik begrijp wat bruteforce beveiliging is wil ik wel meedoen als het kan

edit : joehoee 300 berichtjes

Meedoen = nee, als djvg en ivo er al bijkomen dan is het al druk genoeg.
Verder brute force beveilig is bijv. bij een login, dat na 5 foute loginpogingen dat je dan een kwartier moet wachten voordat je weer mag inloggen.

[Laatst bewerkt door Badeendje op donderdag 11 oktober 2007, om 18:08]
DJVG

Geplaatst op: 11 Oct 2007, 17:50
PimpCoins: 0
💸+
Bewerken Quote

Joris is out-of-order?

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

DJVG schreef:

Joris is out-of-order?

wees iets duidelijker, hij heeft mij een pm gestuurd dat die meedoet, dat die me toevoegt op msn, zodat hij iets meer details krijgt.

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

Succes Badeendje! En Joris natuurlijk.

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

Als het nou gewoon duidelijk Badeendje VS Joris blijft en er niet nog meer personen gaan meedoen, komen we er ook eindelijk achter of Joris nou überhaupt wel kan scripten.

Dat is namelijk waar we achter willen komen: kan Joris nou eigelijk wel scripten? Lijkt me dom om dan andere mensen mee te laten doen.

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

oke, daar heb je een heel goed punt Thaan, oke, Definitief: Joris VS Badeendje.

Artofdead
Master Fish
Geplaatst op: 11 Oct 2007, 18:18
PimpCoins: 0
💸+
Bewerken Quote

Ik ben benieuwd, mag het een mooie site worden ofzoiets...

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

Zal Joris niet wat kant en klare scripts gaan gebruiken dan?

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

Soaddemon schreef:

Ik ben benieuwd, mag het een mooie site worden ofzoiets...

Het gaat om de scripting niet om het design...

Dharion schreef:

Zal Joris niet wat kant en klare scripts gaan gebruiken dan?

Nee, dat mag niet Het moet eigen scripting zijn, anders lijkt het mij overduidelijk bewijs als die van kant en klare scripts gebruikt maakt dat die niet kan scripten.

Oke, hier mijn eerste stap: De basis voor de index.php en de database class(in inc/), Joris, deze zijn van mij, en jij moet eigen dingesen ontwikkelen natuurlijk, maar dat snap je neem ik aan wel.

Index.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
<?php

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

//-----------------------------------------
// 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.');
    
}

//-----------------------------------------
// Define security signal
//-----------------------------------------
define('SAFE', true, true);

//-----------------------------------------
// Show us all errors
//-----------------------------------------
error_reporting(E_ALL ^ E_STRICT);

//-----------------------------------------
// start session
//-----------------------------------------            
session_start();

//-----------------------------------------
// Assign some vars
//-----------------------------------------
date_default_timezone_set('Europe/Amsterdam');

//-----------------------------------------
// Require classes
//-----------------------------------------
require('inc/mysql.php');

//-----------------------------------------
// Init clases
//-----------------------------------------
$db    =    new mysql('localhost','root', 'adminuser','database', 'nw', true);

?>

en mysql.php(in inc/):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
<?php

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

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

class mysql {
    
    //-----------------------------------------
    // Assign vars
    //-----------------------------------------        
    public $connection;

    protected $tableFix            =    '';

    protected $lastQueryString    =    '';

    protected $lastQueryResult    =    '';

    public $useCounters            =    false;

    public $queryCount            =    '0';
    
    //-----------------------------------------
    // Connect to database
    //-----------------------------------------
    public function __construct($host, $username, $password, $dbname, $tableFix = '', $useCounters){

        //-----------------------------------------
        // Connect
        //-----------------------------------------                
        if(!$this->connection = mysql_connect($host, $username, $password)){
            
            die('No connection could be established.<br />
            MySQL returned:' . mysql_error());
            
        }

        //-----------------------------------------
        // Connect to database
        //-----------------------------------------        
        if(!mysql_select_db($dbname, $this->connection)){
            
            die('No connection could be established.<br />
            MySQL returned:' . mysql_error());
            
        }

        //-----------------------------------------
        // Save prefix
        //-----------------------------------------                
        $this->tableFix = empty($tableFix) ? '' : $tableFix;
        
        //-----------------------------------------
        // Connect to database
        //-----------------------------------------        
        if(is_bool($useCounters)){
            
            $this->useCounters = $useCounters;
            
        }
        
    }

    //-----------------------------------------
    // Place prefix for table
    //-----------------------------------------    
    public function tbl($tbl){
        
        return $this->tableFix . '_' . $tbl;
        
    }

    //-----------------------------------------
    // Execute query
    //-----------------------------------------
    public function query($queryString){
        
        if(!$return = mysql_query($queryString, $this->connection)){
        
            die('Query could not be executed.<br />
            MySQL returned:' . mysql_error());
            
        }

        //-----------------------------------------
        // Assign/update global vars
        //-----------------------------------------        
        $this->lastQueryString = $queryString;
        
        $this->lastQueryResult = $return;
        
        if($this->useCounters === true){
            
            $this->queryCount++;
        
        }
        
        return $return;    
        
    }

    //-----------------------------------------
    // Num rows
    //-----------------------------------------
    public function numRows($query = ''){
    
        if(empty($query)){
            
            $return = mysql_num_rows($this->lastQueryResult);
            
        }else{
        
            $return = mysql_num_rows($query);
                        
        }
            
        return $return;
        
    }

    //-----------------------------------------
    // Fetch result
    //-----------------------------------------
    public function fetch($query = '', $method = 'assoc'){
        
        if(empty($query)){
            
            if($method == 'assoc'){
                
                $return = mysql_fetch_assoc($this->lastQueryResult);
                
            }else{
                
                $return    =    mysql_fetch_array($this->lastQueryResult);
                
            }
            
        }else{
            
            if($method == 'assoc'){
            
                $return = mysql_fetch_assoc($query);
                
            }else{
                
                $return = mysql_fetch_array($query);
                
            }
                    
        }
        
        return $return;
        
    }
    
}

?>

Start het commentaar maar
Het resultaat tot nu toe is hier te aanschouwen:[url]http://urbanstreetforum.nl/yannick/nieuws/[/url]

Nu jij joris

[Laatst bewerkt door Badeendje op donderdag 11 oktober 2007, om 18:31]
Basjee
Octo
Geplaatst op: 11 Oct 2007, 18:32
PimpCoins: 0
💸+
Bewerken Quote

Critische
U hebt gezocht op Critische:
Het door u gezochte woord is niet gevonden in het eendelige Van Dale Hedendaags Nederlands. Dit kan komen doordat het er niet in staat, bijvoorbeeld omdat het te nieuw is, of omdat het niet voldoet aan de opnamecriteria. Maar ook is mogelijk dat de spelling niet correct is. Kijk ook eens bij de zoekinstructies.

Kritisch slet!

Riciboy
GewoonBriljant
Geplaatst op: 11 Oct 2007, 18:33
PimpCoins: 0
💸+
Bewerken Quote

No comment Ziet er goed uit.. Ik neem wel aan dat je die mysql class niet vandaag gemaakt hebt?

op de plaatje dat saven postte en verwijderde

[Laatst bewerkt door Riciboy op donderdag 11 oktober 2007, om 18:34]
Badeendje
Pompehdompehdom
moderator
Geplaatst op: 11 Oct 2007, 18:34
PimpCoins: 0
💸+
Bewerken Quote

Dat is geen php slet
dat is gewoon een error die tevoorschijn komt indien php lager is dan 5.2.0
't is een php battle, geen wie kent het woordenboek zo goed mogelijk uit z'n hoofd

Riciboy schreef:

No comment Ziet er goed uit.. Ik neem wel aan dat je die mysql class niet vandaag gemaakt hebt?

op de plaatje dat saven postte en verwijderde

Ik heb gedeelte uit class van m'n core gebruikt, maar is wel volledig eigen coding, dus volgens de php battle regels is volledig toegestaan
btw: wat poste saven ?

[Laatst bewerkt door Badeendje op donderdag 11 oktober 2007, om 18:36]
Riciboy
GewoonBriljant
Geplaatst op: 11 Oct 2007, 18:37
PimpCoins: 0
💸+
Bewerken Quote


dit

Joris
moderator
Geplaatst op: 11 Oct 2007, 18:43
PimpCoins: 0
💸+
Bewerken Quote

Hieronder alvast de basis voor het systeem, sommige onderdelen zullen onnodig zijn, met name in functies.php maar dat edit ik later.

Edit: zie je later wel op de pagina waar het hele systeem komt te staan

[Laatst bewerkt door Joris op zondag 28 oktober 2007, om 15:18]
Rian
Geplaatst op: 11 Oct 2007, 18:48
PimpCoins: 0
💸+
Bewerken Quote

Komt het gratis te downloaden

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

@ rian: Ja
@ joris: Voor de login mag geen mysql worden gebruikt zoals je in de startpost kan lezen, dus van je functies.php blijft weinig over.

Syncie
Geplaatst op: 11 Oct 2007, 18:54
PimpCoins: 0
💸+
Bewerken Quote

Joris schreef:

Hieronder alvast de basis voor het systeem, sommige onderdelen zullen onnodig zijn, met name in functies.php maar dat edit ik later.

De functies.php waar ik standaard altijd mee begin en standaard altijd gebruik
[...]

Dit gebruik ik standaard met websites. Het loginsysteem zal uiteraard met ajax gescript worden.


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.

[Laatst bewerkt door Syncie op donderdag 11 oktober 2007, om 18:55]
Rian
Geplaatst op: 11 Oct 2007, 19:09
PimpCoins: 0
💸+
Bewerken Quote

Ik vind die van Joris ook niet slecht op de MySql fout na

Kersentaart
Geplaatst op: 11 Oct 2007, 19:23
PimpCoins: 0
💸+
Bewerken Quote

1
2
<?php if(!defined('INCLUDE')){ die('Error!'); } ?>
<?php

Niet echt efficient heh?

📫

Nieuw privébericht

🔥

Registreren


Login