PHP-Script.hu
Kiemelt hirdetés:
2026. október 17. 01:48 szombat, ma Hedvig névnap van


grafika


Videóbázis


Kategória: PHP
Üzenőfal
2007.04.07. 07:56

Lefordítottam nektek egy üzenőfal tutoialt, php és MySQL kell az elkészítéséhez!


Első lépésként csináljunk egy MySQL táblát!

1
2
3
4
5
6
7
8
CREATE TABLE `shoutbox` (
`id` INT(12) NOT NULL AUTO_INCREMENT,
`username` VARCHAR(25) NOT NULL,
`email` VARCHAR(25) NOT NULL,
`message` TEXT NOT NULL,
`date` VARCHAR(15) NOT NULL,
`ip` VARCHAR(25) NOT NULL ,
PRIMARY KEY (`id`))

Akkor most kapcsolatot kell teremtenünk a php fájl és az adatbázis között. Hozzunk létre egy új fájlt connect.php névvel és a következőt írjuk bele:

1
2
3
4
5
6
$co_host = "localhost" ; // sql adatbázis cím
$co_name = "username" ; // adatbázis felhasználónév
$co_pw = "password" ; // adatbázis jelszó
$co_db = "database name" ; // adatbázis neve
mysql_connect ( $co_host , $co_name , $co_pw ) or die( mysql_error ());
mysql_select_db ( $co_db ) or die( mysql_error ()); 

Akkor ezen a részen túlvagyunk, most hozzunk létre egy shoutbox.php nevű fájlt!
Megjegyzés: a connect.php tartalmát biztonsági okokból raktuk külön fájlba.

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
<html>
<head>
<title>Üzenőfal!</title>
<style type="text/css">
<!--
.message {
color: #000000;
font-family: Verdana;
font-size: 10px;}
 
.username {
color: #FF9900
font-family: Verdana;
font-size: 10px;
font-weight: bold}
 
.date {
color: #707070;
font-family: Verdana;
font-size: 9px;}
 
.forms {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10 px;
color: #6CA05A;
text-decoration: none;
background-color: #CCCCCC;
border-color: #6CA05A;
border-style: solid;
border: 1px}
 
.submit {
background-color: #CCCCCC;
border-color: #6CA05A;
color: #2A343C;
font-family: Verdana;
font-size: 10px;
border-style: solid;
border 1 px;}
-->
</style>
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="padding: 2px">
<?php
 
// If submitted
if( $_POST [ 'submit' ]) {
 
// Verify if the fields were filled.
if(! $_POST [ 'username' ]) {
echo 'HIBA a felhasználóneveddel!' ;
die;
}
if(! $_POST [ 'email' ]) {
echo 'HIBA az e-mail címeddel!' ;
die;
}
if(! $_POST [ 'message' ]) {
echo 'HIBA az üzeneteddel!' ;
die;
}
 
// Date format
$date = date ( "d/m/y" ); // http://www.php.net/date
 
// Assign variables of the forms
$username = $_POST [ 'username' ];
$email = $_POST [ 'email' ];
$message = $_POST [ 'message' ];
$ip = $_SERVER [ 'REMOTE_ADDR' ];
 
// Connect to the database
include( 'connect.php' );
 
// Insert the info in the shoutbox table.
$query = "INSERT INTO shoutbox (username, email, message, date, ip)
VALUES ('$username','$email','$message','$date','$ip')" ;
mysql_query ( $query );
// close connection
mysql_close ();
 
// Show message to let them return to the shoutbox
?>
<div align="center">Köszönjük a hozzászólást .<br>
Return to the <a href="shoutbox.php">üzenőfal</a>!
<?php
// If NOT submitted
} else {
 
// connect to the database
include( 'connect.php' );
 
$query = "SELECT * FROM shoutbox ORDER BY id DESC LIMIT 10" ;
$result = mysql_query ( $query );
// Create a table
?>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
 
<?
// Run a While loop for the rows
while( $c = mysql_fetch_array ( $result ))
{
?>
<tr>
<td><a href="mailto: <? echo $c [ email ] ?> ">
<? echo $c [ username ] ?> </a> says:
<div align="justify"> <? echo $c [ message ] ?> </div>
</td>
</tr>
<tr><td>on <? echo $c [ date ] ?>
<hr noshade="noshade" size="1" style="border-style: dashed" color="#000000" /></td></tr>
<? } ?>
 
</table>
 
<form method="post" action="shoutbox.php">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>Felhasználónév :</td>
<td><input type="text" name="username" class="forms"></td>
</tr>
<tr>
<td>Email :</td>
<td><input type="text" name="email" class="forms"></td>
</tr>
<tr>
<td>Üzenet :</td>
<td><input type="text" name="message" class="forms"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="submit" value="Mehet" class="subtmit"></td>
</tr>
</table>
</form>
 
<?
}
mysql_close ();
?>
</body>
</html>

Fordította: jackie


 Szerző: userjackie Hozzászólások(6) Hozzászólások Megosztás az iWiW-en Megosztás az Facebook-on Megosztás a Google Reader-ben Megosztás az Twitter-en 

Listázás:  Idő szerint:
Webprogramozás arr Tutorialok info Üzenőfal
(#6) exos válasza erre: (#5) anti 2014.01.26. 00:19

exos
exos
Kezdő

Szia!

Köszönöm, már megoldottam a problémát időközben. Viszont ami meg van adva példa azt konkrétan lekopiztam és abban az elején helytelenül van írva és pont erre figyelmeztet. if($POST["submit"]) csak azért szólok, ha valaki használni szeretné és nem fedezi fel ezt a hibát. Írd át szerintem helyesen a kódot.

Üdv


exos
(#5) anti válasza erre: (#4) exos 2014.01.23. 15:56

anti
anti
Kezdő

Szia!

Ha a table tag width="100%" attribútumát törlöd, akkor közelebb kerülnek a mezők a szövegekhez és van esély rá, hogy láthatóak legyenek.

A Xampp-odban a hibaüzenet kiírása részletesebb, mint amire szükséged van, ezért olyanokra is figyelmeztet, amikkel még működőképes a kód, de logikailag nem teljesen helyes.
A 10. sorban konkrétan arra figyelmeztet, hogy olyan tömbelemet próbálsz ellenőrizni, ami nem létezik. Pl.
if( $_POST [ 'submit' ])
helyett ez a helyes
if( isset($_POST [ 'submit' ]) && $_POST [ 'submit' ])
ha valaki notice elkerülésére törekszik.

Ha nem akarsz ilyeneket látni a jövőben, keresd meg a php.ini file-odat és az error_reporting sort módosítsd erre:
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

(#4) exos 2014.01.23. 13:06

exos
exos
Kezdő

Sziasztok!

Megcsináltam a fenn szereplő tutorialt egy kicsit a kapcsolatot módosítottam, de mást nem.
A gondom az, hogy csak félig meddig jelenik meg (Látszik az hogy Felhasználói név, jelszó, de mellette az input mezők nem. A szöveges mező látszik és a küldés gomb is. Így nem tudom kitölteni az űrlapot ezért a küldésnél hibát dob, de legalább az így látszik, hogy a hibakezelés működik. ) valamint kiír egy hibaüzenetet.
A hibaüzenet: Notice: Undefined index: submit in E:Xampphtdocssoulmusicincshoutbox.php on line 10

Kérem segítsetek ebben, mi lehet a gond.

Előre is köszönöm


exos
(#3) 111 2013.10.18. 21:54

111
111
Kezdő

Sziasztok! Észrevettem néhány hibát. A mysql_close(); kétszer van leírva, nem a végéről kell letörölni a függvényt, hanem a mysql_query(); után. Amúgy jó kis üzenőfal... Nagyon köszönöm.


123456789
(#2) raczger válasza erre: (#1) ndks 2012.03.15. 15:52

raczger
raczger
Admin

erre az oldalra illeszd be az üzenőfal kódját: http://pastebin.com/
majd a kapott hivatkozást linkeld be itt fórumon és átnézem mi lehet a gond

(#1) ndks 2012.03.15. 09:07

ndks
ndks
Kezdő

hali!
Én megírtam ezt a scriptet kicsit máskép mert van benne néhany hiba, de nem igazan tölti fel a táblákat az adatbázisan, nem lenne vlmi tipped?


[/b]ndks[b]


Back to the Future
Listázás:  Idő szerint:


© 2006-2026 PHP-Script.hu, Minden jog fenntartva!
Design: Rácz Gergely, Oldalmotor: Rácz Gergely
Impresszum - Oldaltörténet - Oldalszabályzat