Groot Nieuws Systeem
Een uitgebreid nieuws systeem met een aantal handige functies, waaronder:
- Items & Links posten
- Ledenlijst
- Profielen
- Ban systeem
- Zoeken
- Javascript validatie
- Statistieken
- 6 verschillende templates
Documentatie
Hier is een documentatie.
Downloaden & Instaleren
Je kunt hem hier downloaden.
http://phphulp.phpclub.nl/730_nieuws_v2_2.zip Mirror (Versie 2.2)
Ik zou graag willen weten of jullie nog wat bugs of veiligheids-risico's tegenkomen, ik heb hem geprobeerd zo veilig en goed mogelijk te maken maar ik kan natuurlijk altijd wat over het hoofd hebben gezien. Thanks! :)
Voorbeeld: http://www.sosite.nl/docs/news/
Gesponsorde koppelingen
PHP script bestanden
19 reacties op 'Groot Nieuws Systeem'
Gesponsorde koppelingen
Ik heb het nog niet heel erg kunnen bekijken, maar het eerste wat me opvalt: geen onmouseover!! :p (javascript.. @bijdehandjes: of een hover).
Ik heb altijd de indruk dat het 'mooier' is met een hover/onmouseover. Dan krijg je meer de indruk dat de link ook daadwerkelijk 'werkt'.
Ik zal eens de code gaan bekijken etc.
Rest: mooi script!
Ik heb altijd de indruk dat het 'mooier' is met een hover/onmouseover. Dan krijg je meer de indruk dat de link ook daadwerkelijk 'werkt'.
Ik zal eens de code gaan bekijken etc.
Rest: mooi script!
Werking lijkt goed, alleen had de documentatie wat beter gemogen zoals "Item genereren", welk item? of menu: wat staat er allemaal in?
Trouwens, er worden hier wel hovers gebruikt wanneer je templates van een script levert, een duidelijk voorbeeld lijkt me Thomas' blog:: http://www.phphulp.nl/php/scripts/6/714/ ::.
Verder ben ik zeer tevreden over dit script, ik ben van plan om deze in de toekomst te gaan gebruiken.
Trouwens, er worden hier wel hovers gebruikt wanneer je templates van een script levert, een duidelijk voorbeeld lijkt me Thomas' blog:: http://www.phphulp.nl/php/scripts/6/714/ ::.
Verder ben ik zeer tevreden over dit script, ik ben van plan om deze in de toekomst te gaan gebruiken.
Sorry, ik ben nooit zo uitgebreid als het gaat om commentaar schrijven tussen de regels in, komt omdat ik, tja, alweer te lui ben :P.
Maar dat 'item en menu genereren' betekend dat alle gegevens van dat betreffende item uit de database wordt gehaald en in variabelen wordt gezet. Om vervolgens in de templates getekend te worden. Dat komt omdat ik HTML en PHP zo veel mogelijk heb gescheiden. De templates zijn ook gewoon php bestanden en alles wordt geinclude. Dus als ik uiteindelijk een variabele maak in bijvoorbeeld 'index.php' kan ik die later ergens in een template, bv. 'site.php' er weer uit lezen.
Daarom dus :)
Maar dat 'item en menu genereren' betekend dat alle gegevens van dat betreffende item uit de database wordt gehaald en in variabelen wordt gezet. Om vervolgens in de templates getekend te worden. Dat komt omdat ik HTML en PHP zo veel mogelijk heb gescheiden. De templates zijn ook gewoon php bestanden en alles wordt geinclude. Dus als ik uiteindelijk een variabele maak in bijvoorbeeld 'index.php' kan ik die later ergens in een template, bv. 'site.php' er weer uit lezen.
Daarom dus :)
Ik heb nu alles geupdate naar versie 2.2! Zo'n beetje alle fouten zijn er nu uit en ik heb ondertussen ook wat handige nieuwe functies toegevoegd. Je kunt nu bijvoorbeeld je eigen comments aanpassen, ook al ben je niet ingelogd.
Als je je versie wil update naar 2.2 dan kun je het beste alle bestanden overschrijven want zo'n beetje alle bestanden zijn ook aangepast, ook 'settings.php'. Deze moet je dan even opnieuw instellen :)
Als je je versie wil update naar 2.2 dan kun je het beste alle bestanden overschrijven want zo'n beetje alle bestanden zijn ook aangepast, ook 'settings.php'. Deze moet je dan even opnieuw instellen :)
Ik heb het bestand gedownload, en alles geinstalleert en op mijn server gezet. Nou wil ik me gaan registreren, en dan gaat ie naar deze pagina: http://numenorean.phpnet.us/news_2_2/register/home/, maar ik heb helemaal geen map 'register' in de map 'news_2_2' staan. Hoe kan dat?
Aha, bij jou is het .htaccess bestand niet ondersteund. Normaal zou deze die url moeten doorverwijzen naar http://numenorean.phpnet.us/news_2_2/index.php?a=register&t=home achter de schermen. Dit gebeurt bij jouw niet, dus jou server ondersteund het .htaccess betand niet.
De oplossing hiervoor staat gewoon in de documentatie, op deze pagina onder 'algemeen' :
http://www.sosite.nl/docs/news/view/help/17/
Hopelijk lost dat je probleem op :)
De oplossing hiervoor staat gewoon in de documentatie, op deze pagina onder 'algemeen' :
http://www.sosite.nl/docs/news/view/help/17/
Hopelijk lost dat je probleem op :)
Het systeem doet het goed bij mij, alleen heb ik een paar vraagjes:
- Ik heb een hele smalle tabel waar de tekst in komt te staan. Het submenu neemt nu nogal veel ruimte in beslag: het nieuwsbericht staat er niet naast, maar onder. Hoe kan ik het submenu aan de rechterkant van de tabel neerzetten?
- het hoofdmenu is nu goed, maar er komen meer links bij. hoe kan ik het hoofdmenu aan de linkerkant neerzetten?
- ik wil graag meer dingen weten van mijn bezoekers. ik heb wat geknutseld, maar ik krijg het er niet uit. er komt onbekend uit als ik 1 ding kopieer en plak, en aanpas zoals ik denk dat ik het aan moet passen!
- de tags (plaatjes, link, code) doen het niet goed. de scipt prompt word wel uitgevoerd, maar niet doorgevoerd: er veranderd niks aan jouw bericht! kan ik het ook doen dat HTML ook werkt? 9(dat is nu niet zo)
de site waar het (super mooie) systeem opstaat is: http://www.ellntj.nl/the-fray/view/home/
en ik wil hem heel veel op http://www.ellntj.nl/get-frayed/ laten lijken!
Kan je me daarmee helpen? Alvast heel erg bedankt!
Groetjes
- Ik heb een hele smalle tabel waar de tekst in komt te staan. Het submenu neemt nu nogal veel ruimte in beslag: het nieuwsbericht staat er niet naast, maar onder. Hoe kan ik het submenu aan de rechterkant van de tabel neerzetten?
- het hoofdmenu is nu goed, maar er komen meer links bij. hoe kan ik het hoofdmenu aan de linkerkant neerzetten?
- ik wil graag meer dingen weten van mijn bezoekers. ik heb wat geknutseld, maar ik krijg het er niet uit. er komt onbekend uit als ik 1 ding kopieer en plak, en aanpas zoals ik denk dat ik het aan moet passen!
- de tags (plaatjes, link, code) doen het niet goed. de scipt prompt word wel uitgevoerd, maar niet doorgevoerd: er veranderd niks aan jouw bericht! kan ik het ook doen dat HTML ook werkt? 9(dat is nu niet zo)
de site waar het (super mooie) systeem opstaat is: http://www.ellntj.nl/the-fray/view/home/
en ik wil hem heel veel op http://www.ellntj.nl/get-frayed/ laten lijken!
Kan je me daarmee helpen? Alvast heel erg bedankt!
Groetjes
Het is niet volledig die download! want als ik in index op login of regstreer klik krijg ik een 404 pagina met als adres:
http://www.mijn site.nl/News_2_2/login/home/
en
http://www.mijn site.nl/News_2_2/register/home/
en in posting.php krijg ik dit:
X
Fout
Er is een fout opgetreden.
Er is een fout opgetreden
http://www.mijn site.nl/News_2_2/login/home/
en
http://www.mijn site.nl/News_2_2/register/home/
en in posting.php krijg ik dit:
X
Fout
Er is een fout opgetreden.
Er is een fout opgetreden
Review naar aanleiding van post: Eskisehirli schreef op 08.06.2008 14:28
Antwoord: tja het verdient niet de schoonheidsprijs maar voor een beginner anno 2006 op php 4.2 kan je je verwachtingen niet te hoog inzetten.
Voor de rest wordt er ook geen onderhoud op gepleegd zip file is van:
20-8-2006
Installatie configuratie:
Stap 1:
-> Notice: Undefined index: p in D:\www\htdocs\6\news\setup\setup.php on line 80
Stap 2:
Beetje ongelukkig dat je de setup.php script moet aanpassen $site_ gegevens
Handiger zal zijn om dit uit te vragen en weg te schrijven in een filetje zodat je het met parse_ini_file kunt benaderen
Stap 3:
-> Notice: Use of undefined constant install - assumed 'install' in D:\www\htdocs\6\news\setup\setup.php on line 146
-> Fatal error: Call to undefined function mysql_connect() in D:\www\htdocs\6\news\include\db.php on line 44
else if($uri_page == 3 && $_POST['assume'] == install)
Bekijk uw site en overige
-> Notice: Undefined index: t in D:\www\htdocs\6\news\common.php on line 37
-> Notice: Undefined index: p in D:\www\htdocs\6\news\common.php on line 39
-> Notice: Undefined index: a in D:\www\htdocs\6\news\common.php on line 40
-> Notice: Undefined index: o in D:\www\htdocs\6\news\common.php on line 41
-> Notice: Undefined variable: ip in D:\www\htdocs\6\news\common.php on line 44
-> Notice: Undefined variable: REMOTE_ADDR in D:\www\htdocs\6\news\common.php on line 47
Wat de hel, weer overal vergeten controles toe te voegen......
Bij het reageren op een x item vliegt er een PHP Notice: Use of undefined constant site_comment - assumed 'site_comment' in D:\www\htdocs\6\news\posting.php on line 91
door het beeld
Andere aandachtspunten:
- SQL-Injection
- PHP variabelen buiten qoutes
- Script logica
- Scripting comments
- gebruik van variabelen en constanten
- controle van wat er van buitenaf kan komen kan beter
Advies voor degene die dit willen gebruiken:
Voer in ieder geval de fixes door welke ik hier gepost heb, overigens dekt dit niet alles af, ben er maar globaal door heen gefietst.
Antwoord: tja het verdient niet de schoonheidsprijs maar voor een beginner anno 2006 op php 4.2 kan je je verwachtingen niet te hoog inzetten.
Voor de rest wordt er ook geen onderhoud op gepleegd zip file is van:
20-8-2006
Installatie configuratie:
Stap 1:
-> Notice: Undefined index: p in D:\www\htdocs\6\news\setup\setup.php on line 80
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
/*
-> Notice: Undefined index: p in D:\www\htdocs\6\news\setup\setup.php on line 80
*/
$uri_page = (strip_str_i($_GET['p']) != '') ? strip_str_i($_GET['p']) : -1;
/*
-> fix
*/
$uri_page = (isset($_GET['p']) && strip_str_i($_GET['p']) != '') ? strip_str_i($_GET['p']) : -1;
?>
/*
-> Notice: Undefined index: p in D:\www\htdocs\6\news\setup\setup.php on line 80
*/
$uri_page = (strip_str_i($_GET['p']) != '') ? strip_str_i($_GET['p']) : -1;
/*
-> fix
*/
$uri_page = (isset($_GET['p']) && strip_str_i($_GET['p']) != '') ? strip_str_i($_GET['p']) : -1;
?>
Stap 2:
Beetje ongelukkig dat je de setup.php script moet aanpassen $site_ gegevens
Handiger zal zijn om dit uit te vragen en weg te schrijven in een filetje zodat je het met parse_ini_file kunt benaderen
Stap 3:
-> Notice: Use of undefined constant install - assumed 'install' in D:\www\htdocs\6\news\setup\setup.php on line 146
-> Fatal error: Call to undefined function mysql_connect() in D:\www\htdocs\6\news\include\db.php on line 44
else if($uri_page == 3 && $_POST['assume'] == install)
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
/*
-> Notice: Use of undefined constant install - assumed 'install' in D:\www\htdocs\6\news\setup\setup.php on line 146
*/
else if($uri_page == 3 && $_POST['assume'] == install)
/*
-> fix
*/
elseif ($uri_page == 3 && ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['assume']) && $_POST['assume'] == 'install'))
?>
/*
-> Notice: Use of undefined constant install - assumed 'install' in D:\www\htdocs\6\news\setup\setup.php on line 146
*/
else if($uri_page == 3 && $_POST['assume'] == install)
/*
-> fix
*/
elseif ($uri_page == 3 && ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['assume']) && $_POST['assume'] == 'install'))
?>
Code (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
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
<?php
/*
-> Fatal error: Call to undefined function mysql_connect() in D:\www\htdocs\6\news\include\db.php on line 44
*/
$dbcon = mysql_connect($host,$user,$pass) or die(mysql_error());
/*
-> fix
Kan niet gefixed worden want mysql is niet geladen daar en tegen wel mysqli en pdo_mysql
Dan toch maar een poging doen om mysql te laden, dan verkrijg je deze fout ook niet
db.php function connect
*/
function dbconnect($host,$user,$pass,$data)
{
if (!extension_loaded('mysql')) {
switch(PHP_OS) {
case 'WINNT':
if (!dl('php_mysql.dll')) {
exit;
}
break;
default:
if (!dl('mysql.so')) {
exit;
}
break;
}
}
$dbcon = mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($data, $dbcon) or die(mysql_error());
}
?>
/*
-> Fatal error: Call to undefined function mysql_connect() in D:\www\htdocs\6\news\include\db.php on line 44
*/
$dbcon = mysql_connect($host,$user,$pass) or die(mysql_error());
/*
-> fix
Kan niet gefixed worden want mysql is niet geladen daar en tegen wel mysqli en pdo_mysql
Dan toch maar een poging doen om mysql te laden, dan verkrijg je deze fout ook niet
db.php function connect
*/
function dbconnect($host,$user,$pass,$data)
{
if (!extension_loaded('mysql')) {
switch(PHP_OS) {
case 'WINNT':
if (!dl('php_mysql.dll')) {
exit;
}
break;
default:
if (!dl('mysql.so')) {
exit;
}
break;
}
}
$dbcon = mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($data, $dbcon) or die(mysql_error());
}
?>
Bekijk uw site en overige
-> Notice: Undefined index: t in D:\www\htdocs\6\news\common.php on line 37
-> Notice: Undefined index: p in D:\www\htdocs\6\news\common.php on line 39
-> Notice: Undefined index: a in D:\www\htdocs\6\news\common.php on line 40
-> Notice: Undefined index: o in D:\www\htdocs\6\news\common.php on line 41
-> Notice: Undefined variable: ip in D:\www\htdocs\6\news\common.php on line 44
-> Notice: Undefined variable: REMOTE_ADDR in D:\www\htdocs\6\news\common.php on line 47
Wat de hel, weer overal vergeten controles toe te voegen......
Code (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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
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
<?php
/*
-> Notice: Undefined index: t in D:\www\htdocs\6\news\common.php on line 37
*/
$uri_theme = (strip_str(strtolower($_GET['t'])) != '') ? strip_str($_GET['t']) : $page_theme_default;
/*
-> fix
*/
$uri_theme = (isset($_GET['t']) && strip_str(strtolower($_GET['t'])) != '') ? strip_str($_GET['t']) : $page_theme_default;
/*
-> Notice: Undefined index: p in D:\www\htdocs\6\news\common.php on line 39
*/
$uri_page = (strip_str_d($_GET['p']) != '') ? strip_str_p($_GET['p']) : -1;
/*
-> fix
*/
$uri_page = (isset($_GET['p']) && strip_str_d($_GET['p']) != '') ? strip_str_p($_GET['p']) : -1;
/*
-> Notice: Undefined index: a in D:\www\htdocs\6\news\common.php on line 40
*/
$uri_action = (strip_str(strtolower($_GET['a'])) != '') ? strip_str($_GET['a']) : 'view';
/*
-> fix
*/
$uri_action = (isset($_GET['a']) && strip_str(strtolower($_GET['a'])) != '') ? strip_str($_GET['a']) : 'view';
/*
-> Notice: Undefined index: o in D:\www\htdocs\6\news\common.php on line 41
*/
$uri_offset = (strip_str_d($_GET['o']) != '') ? strip_str($_GET['o']) : 0;
/*
-> fix
*/
$uri_offset = (isset($_GET['o']) && strip_str_d($_GET['o']) != '') ? strip_str($_GET['o']) : 0;
/*
-> Notice: Undefined variable: ip in D:\www\htdocs\6\news\common.php on line 44
*/
list($user_id,$user_name,$user_role,$user_flood) = get_login($ip);
/*
Waar o waar komt $ip van weg........
Het zal wel maar de function get_login verwacht geen parameters
-> Fix
*/
list($user_id,$user_name,$user_role,$user_flood) = get_login();
/*
-> Notice: Undefined variable: REMOTE_ADDR in D:\www\htdocs\6\news\common.php on line 47
*/
$user_ip = ''.gethostbyname($REMOTE_ADDR);
/*
Waar o waar komt $REMOTE_ADDR van weg of wordt er soms bedoeld: $_SERVER['REMOTE_ADDRS']
en wat doet ''. => niets dus weg er mee
echter dan wordt gethostbyname() aangeroepen met een io adres terwijl het gerbuik is:
-> gethostbyname('www.example.com');
-> Fix
*/
$user_ip = $_SERVER['REMOTE_ADDR'];
?>
/*
-> Notice: Undefined index: t in D:\www\htdocs\6\news\common.php on line 37
*/
$uri_theme = (strip_str(strtolower($_GET['t'])) != '') ? strip_str($_GET['t']) : $page_theme_default;
/*
-> fix
*/
$uri_theme = (isset($_GET['t']) && strip_str(strtolower($_GET['t'])) != '') ? strip_str($_GET['t']) : $page_theme_default;
/*
-> Notice: Undefined index: p in D:\www\htdocs\6\news\common.php on line 39
*/
$uri_page = (strip_str_d($_GET['p']) != '') ? strip_str_p($_GET['p']) : -1;
/*
-> fix
*/
$uri_page = (isset($_GET['p']) && strip_str_d($_GET['p']) != '') ? strip_str_p($_GET['p']) : -1;
/*
-> Notice: Undefined index: a in D:\www\htdocs\6\news\common.php on line 40
*/
$uri_action = (strip_str(strtolower($_GET['a'])) != '') ? strip_str($_GET['a']) : 'view';
/*
-> fix
*/
$uri_action = (isset($_GET['a']) && strip_str(strtolower($_GET['a'])) != '') ? strip_str($_GET['a']) : 'view';
/*
-> Notice: Undefined index: o in D:\www\htdocs\6\news\common.php on line 41
*/
$uri_offset = (strip_str_d($_GET['o']) != '') ? strip_str($_GET['o']) : 0;
/*
-> fix
*/
$uri_offset = (isset($_GET['o']) && strip_str_d($_GET['o']) != '') ? strip_str($_GET['o']) : 0;
/*
-> Notice: Undefined variable: ip in D:\www\htdocs\6\news\common.php on line 44
*/
list($user_id,$user_name,$user_role,$user_flood) = get_login($ip);
/*
Waar o waar komt $ip van weg........
Het zal wel maar de function get_login verwacht geen parameters
-> Fix
*/
list($user_id,$user_name,$user_role,$user_flood) = get_login();
/*
-> Notice: Undefined variable: REMOTE_ADDR in D:\www\htdocs\6\news\common.php on line 47
*/
$user_ip = ''.gethostbyname($REMOTE_ADDR);
/*
Waar o waar komt $REMOTE_ADDR van weg of wordt er soms bedoeld: $_SERVER['REMOTE_ADDRS']
en wat doet ''. => niets dus weg er mee
echter dan wordt gethostbyname() aangeroepen met een io adres terwijl het gerbuik is:
-> gethostbyname('www.example.com');
-> Fix
*/
$user_ip = $_SERVER['REMOTE_ADDR'];
?>
Bij het reageren op een x item vliegt er een PHP Notice: Use of undefined constant site_comment - assumed 'site_comment' in D:\www\htdocs\6\news\posting.php on line 91
door het beeld
Code (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
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
<?php
/*
-> PHP Notice: Use of undefined constant site_comment - assumed 'site_comment' in D:\www\htdocs\6\news\posting.php on line 91
*/
else if($front == 'comment' && site_comment && ($user_id != -1 || $site_anonymous))
/*
-> Fix
*/
else if($front == 'comment' && $site_comment && ($user_id != -1 || $site_anonymous))
/*
-> PHP Notice: Use of undefined constant site_register - assumed 'site_register' in D:\www\htdocs\6\news\posting.php on line 196
*/
/*
Blijkbaar van variabelen constanten gemaakt maar vergeten dit om te zetten....... in
Fix: settings.php
define('site_comment',true);
define('site_register',true);
of fix het in posting.php
site_register omzetten naar variabele $site_register
*/
?>
/*
-> PHP Notice: Use of undefined constant site_comment - assumed 'site_comment' in D:\www\htdocs\6\news\posting.php on line 91
*/
else if($front == 'comment' && site_comment && ($user_id != -1 || $site_anonymous))
/*
-> Fix
*/
else if($front == 'comment' && $site_comment && ($user_id != -1 || $site_anonymous))
/*
-> PHP Notice: Use of undefined constant site_register - assumed 'site_register' in D:\www\htdocs\6\news\posting.php on line 196
*/
/*
Blijkbaar van variabelen constanten gemaakt maar vergeten dit om te zetten....... in
Fix: settings.php
define('site_comment',true);
define('site_register',true);
of fix het in posting.php
site_register omzetten naar variabele $site_register
*/
?>
Andere aandachtspunten:
- SQL-Injection
- PHP variabelen buiten qoutes
- Script logica
- Scripting comments
- gebruik van variabelen en constanten
- controle van wat er van buitenaf kan komen kan beter
Advies voor degene die dit willen gebruiken:
Voer in ieder geval de fixes door welke ik hier gepost heb, overigens dekt dit niet alles af, ben er maar globaal door heen gefietst.
Om te reageren heb je een account nodig en je moet ingelogd zijn.
- Details
Door:
Stefan- 6 jaar geleden
- 1.802 x bekeken
- Labels
- Geen tags toegevoegd.
- PHP scripts opties
- PHP algemeen
- Nieuwste PHP scripts
- PHP script toevoegen

PHP hulp
0 seconden vanaf nu