Top
Phpuniverset logo
 

INDHOLD

Forside

Job annoncer

Tips og Tricks

Konkurrence

Downloads

Dokumenter

PHP bog shop

Forum

Online udviklere


Propelcom

ARTIKLER

CSS

Diverse

E-handel / annoncer

Grafik

Html

Internet

Javascript

Linux

PHP/MySQL

Programmer

Flash

Søgemaskiner

Windows

C / C++


INFO

Information

Annoncering

Kontakt

Community [opdateret]

Forside Kategori PHP/MySQL Community [opdateret]




 

Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige
diverse funktioner. I de fleste community's og brugersystemer bliver det brugt session's.
En session er noget der bliver gemt på det brugte server, som gemmer de dataer man taster ind.
Men session'en bliver for det meste kun brugt til at gemme et brugernavn.

Hvis du følger denne artikel er det vigtigt at din server /(dit host) understøtter MySQL og
sessions.


NB. Under denne artikel kan der nemt forkomme stavefejl - og kode fejl, men håber du kan bruge den =)

----------------------------------------------------
Del #1,1: Lav databasen.

I din MySQL database skal du altid gemme tabeller, med hvisse navne; som dit script kender.


CREATE TABLE brugere (
id int(9) unsigned NOT NULL auto_increment,
brugernavn varchar(200) NOT NULL default '',
kodeord varchar(200) NOT NULL default '',
email varchar(200) NOT NULL default '',
UNIQUE K'EY id (id)
) TYPE=MyISAM;


Når du har gjordt det er din database faktisk klar.


----------------------------------------------------

Del #1,2: Forbindelsen til database; Lav en fil: ("db_connect.php")

I stedet for at holde kontakt til databasen på alle siderne laver jeg altid én fil med
forbindelsen, filen kan derfor include's på alle de andre sider og dermed holde
kontakten vedlige.

I filen kan du også indsætte mange andre nyttige ting som skal være på alle de dynamiske sider.
På denne side har jeg også valgt at indsætte log-ud strengen.

 
<?php
$database = ""; // her skal du angive din database
$bruger = ""; // her skal du angive din bruger
$password = ""; // her skal du indtaste dit kodeord til din mySQL server
$host = "";// dit host for det meste er det localhost

mysql_connect($host, $bruger, $password); // Forbindelse til serveren.
mysql_select_db($database); // Holder forbindelse til databasen

if($mod == "logOut"){
session_start();
session_destroy();

echo "<script>\n setTimeOut(\"location.href='login.php?ermsg=Du er nu logget ud';\", 200); \n </script>";

}

if($brugernavn){
$bSQL = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn'");
$brugerinfo = mysql_fetch_array($bSQL);
}
?>


Så kan jeg skrive
<? include "db_connect.php"; ?>
på alle siderne.

----------------------------------------------------
Del #2,0: Login siden, tjek om opkysningerne passer; Lav en fil: ("login.php")

I alle communityes skal man altid angive noget for at få adgang til nogle bestemte sider, nogle
gange bare et kodeord, nogle gange kundenummer eller brugernavn. Men i dette tilfælde skal vi
angive brugernavn eller Username som nogle vælger og kalde det (Engelsk)



<?php
session_start();
include "db_connect.php";
if($tjek == "yes") {
$sql = mysql_query("SELECT * FROM BRUGERE WHERE brugernavn = '$fbruger'");
$btjek = mysql_fetch_array($sql);
if($fkode == $btjek[kodeord]){
$brugernavn = $btjek[brugernavn];
session_register("brugernavn");
header("location: login_ok.php");
}
else{
$ermsg = "Forkert brugernavn eller password \n";
}
}
if($brugernavn){
header("location: login_ok.php");
}
else{
?>
<HTML>
<HEAD>
<TITLE> community </TITLE>
</HEAD>
<BODY>

<?
if($ermsg){
echo "<font color=\"red\" size=\"2\" face=\"Tahoma\">". $ermsg . "</font><br><br>\n";
}

?>

<FORM ACTION="<?=$PHP_SELF?>" METHOD="POST" NAME="FORM">
<input type="hidden" name="tjek" value="yes">
Brugernavn : <input name="fbruger" type="text"><br>
Kodeord : <input name="fkode" type="password"><br>
<input type="submit" value="login">
</form>

</BODY>
</HTML>
<?
}
?>



----------------------------------------------------
Del #2,1: Login-okay siden, forside til dem der ER logget ind; Lav en fil: ("login_ok.php")

Når brugerene er logget ind, får de nu adgang til en række funktioner, som de kan benytte sig af.

1; ret profil
2; se profiler
3; log af


<?php
session_start();
include "db_connect.php";

if($brugernavn){
if($page){

echo "<HTML>\n <HEAD>\n <TITLE> community </TITLE>\n </HEAD>\n <BODY>";

if($page == "bliste"){
$sql = mysql_query("select * from brugere");
echo "\t komplet liste over alle bruger:<br><br>";
$strNumber = 0;
while($row = mysql_fetch_array($sql)) {
$strNumber = $strNumber+1;
echo "\t\t #$strNumber - <a OnClick=\"parent.location.href='?page=profil&id=$row[id]'\" style=\"cursor:hand\">$row[brugernavn]</a><br>\n";
}
if($page == "profil"){

$sql = mysql_query("select * from brugere where id = '$id'");
while($row = mysql_fetch_array($sql)) {

echo "\n\t velkommen til $row[brugernavn]'s profil.\n \t Du kan kontakte $row[brugernavn] på følgene e-mail $row[email] \n \n \t <br> Der er ikke andet her.";

}
if($id == NULL){
echo "\n Den afsøgte bruger blev ikke fundet. <br>\n Prøv igen senere.\n";
}
}
if($page == "rbruger"){

if($module){
mysql_query("UPDATE brugere SET email = '$email' WHERE brugernavn = '$brugernavn' OR id = '$brugerinfo[id]");
echo "\n \t<script> \n \t alert(\"Din profil er nu redigeret\"); \n \t parent.location.href='?page=profil&id=$brugerinfo[id]'; \n \t </script>\n";
}

echo "\t <form action=\"login_ok.php\" method=\"post\">\n";
echo "\t <input type=\"hidden\" name=\"page\" value=\"rbruger\"> \n";
echo "\t <input type=\"hidden\" name=\"module\" value=\"action\"> \n";
echo "\t <input type=\"text\" name=\"email\">\n\n";
echo "<input type=\"submit\" value=\"Rediger profil\">\n \t</form>\n";
}

echo "</BODY>\n </HTML>";
}
else{


?>
<HTML>
<HEAD>
<TITLE> community </TITLE>
</HEAD>

<body link="#000000" vlink="#000000" alink="#000000">

<DIV align=left>
<TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111 height=198 cellSpacing=0 cellPadding=0 width=432 border=0>
<TBODY>
<TR>
<TD vAlign=top width=157 height=198>

<font size="2" face="tahoma">

<a OnClick="parent.frame.location.href='?page=bliste';" style="cursor:hand">Brugerliste</a><br>
<a OnClick="parent.frame.location.href='?page=rbruger';" style="cursor:hand">Ret bruger</a><br>
<a OnClick="parent.location.href='?mod=logOut';" style="cursor:hand">Log af</a>

</TD>
<TD vAlign=top width=269 height=198>
<iframe name="frame" src="?page=start" width="200" height="300" frameborder="0">
</iframe>
</TD></TR>
</TBODY>
</TABLE>
</DIV>

</BODY>
</HTML>
<?
}
if(!$brugernavn){
header("location: login.php?ermsg=Du er ikke logget ind.");
}
}
}
?>


----------------------------------------------------Slut...

Eksemplerne som er indtastet her, er testet på en Apache server med PHP Ver. 4.1.1; Og dermed kører det fint.

Håber du fik god af artiklen.

Skrevet AF nikolaj sommer jensen 13 oktober '04 start: 20:41 slut 22:21



Skrevet af: Hacket | Dato : 2004-10-21 17:2 | Læst : 15031 gange | Print

Din kommentar og karakter til artiklen

Din karakter:

1

2

3

4

5

6

7

8

9

10

Kommentar:

Log ind for at give en karakter og kommentar.

Kommentarer og karakterer til artiklen

 


8/10

"Du mangler lidt m8... som sagt kommentarene som gør at en nybegynder kan følge med i, hvad du laver... - Ellers en rigtig god artikel. Også skulle du måske også lige få opret.php med i den ;-) Så... er alle vidst med på at du skal have 10, hvis dette var der :) Men når det ikke er... så er det dog "kun" 8 herfra. -- Dog vil jeg sige at nybegyndere nok ikke skal kaste sig ud i den her fra starten af... Jeg ville mene de skulle starte med en af de "Fra Bunden" artikler der er her på sitet... og så, prøve at lave et lille admin login! Alt herfra :) "

Sebastian Sørensen | 18.10.2007, 17:45

 


7/10

"Vil gerne have et svar :-)"

PHP-Jonas | 05.09.2007, 19:34

 


7/10

"Rigtig god artikel, efter hvad jeg har set på. Men her i kommentar-boksen skriver nogle der mangler en opret.php? Er det ikke vigtigt sådan en funktion er med? Ellers vil det da ødelægge hele communitiet, hvis ingen kan oprette sig."

PHP-Jonas | 05.09.2007, 18:45

 


1/10

"1"

Casper | 08.01.2007, 17:04

 


4/10

"Hmm du glemmer og lave opret.php , og er også enig i Jacob Veile"

Nicklas | 31.07.2006, 13:43

 


10/10

"Syntes det er en super artikel, og vil bruge den :P. Vil også importere et par ting , såsom; Tagwall, flere muligheder i "Ret bruger" og sidst men ikke mindst, et CSS. Derfor får du et 10'tal ! :)"

Kristoffer | 16.03.2006, 19:02

 


6/10

"Hmm.... udemærket artikel, men så heller ikke mere... HVis du har tænkt at en nybegynder eller en midel erfaren php programmør skulle finde ud af det, kan du godt tro om igen! Der ikke en skid forklaring på hvordan koden er opbygget på og, du forklar ikke hvad du har gang, og hvorfor du lig netop vælger den måde, HVis der kom mere forklaring Får du 10 herfra, men først når dette er gjordt"

Jacob Veile | 19.10.2005, 00:04

 

Send Artikel/anmeldelse til: phpuni@phpuniverset.dk

Tilbage til oversigt

FORUM

Nyeste forum indlæg :

PHP/Opencart import module

Opencart/php import modul hjælp

Lækkert kontor / kontorfællesskab i Helsingør

Opdatering af PHP

Vurdering af hjemmeside

Nyeste forum svar :

Lækkert kontor / kontorfællesskab i Helsingør

Android programmering

Joomla som CMS

Grafik problemer

Prissammenligningsside

 

MEDLEM

LOGIN ER IKKE MULIGT, MENS VI LAVER NYT SITE
 

NYHEDSBREV

Nyhedsbrev

Tilmeld dig vores nyhedsbrev og modtag nyheder om nye scripts og tips samt om mange andre nye tiltag på Phpuniverset.dk


 

© Copyright 2000 Propelcom Phpuniverset's politik om personlige oplysninger, artikler & Koder Phpuniverset er optimeret til Mozilla 1024 * 768 Phpuniverset version: 3.0 beta
Webhost : Ignesco.dk - android talk & help

Bund