PDA

View Full Version : Code PHP gửi Mail Item Phong Vân có tìm kiếm vật phẩm theo tên



c1102
16-01-16, 11:04 AM
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

Mở file submit.php chỉnh lại theo thông tin CSDL của bạn


//Nhập thông tin CSDL của bạn phía dưới:
$hostname="localhost";
$database="Tên CSDL"; // Tên CSDL
$username="Tên đăng nhập CSDL"; // Tên đăng nhập CSDL
$password="Mật khẩu CSDL"; // Mật khẩu CSDL

Link tải: <b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

lochungnet
16-01-16, 01:45 PM
code chạy ok lắm, thank a, nhưng sao gửi cái dc cái hông vậy a, hình như do id vật phẩm ?!

minhkhanh109
16-01-16, 01:48 PM
topic rất hay cảm ơn bạn rất nhiều. thêm chức năng tìm tên nhân vật nữa thì tuyệt vời
:)>-:)>-:)>-:)>-:)>-:)>-:)>-:)>-

c1102
16-01-16, 05:24 PM
code chạy ok lắm, thank a, nhưng sao gửi cái dc cái hông vậy a, hình như do id vật phẩm ?!

Có thể do item của bạn trên server có khác với file item đi kèm theo code nhé

--- Chế độ gộp bài viết ---


topic rất hay cảm ơn bạn rất nhiều. thêm chức năng tìm tên nhân vật nữa thì tuyệt vời
:)>-:)>-:)>-:)>-:)>-:)>-:)>-:)>-

Cái đó không vấn đề gì bạn có thể tạo đoạn code search tại database thực hiện tương tự như code trên thôi

lochungnet
16-01-16, 05:47 PM
Có thể do item của bạn trên server có khác với file item đi kèm theo code nhé
Vậy copy file từ trong server ra thư mục mail là chạy tốt hả a, thank a

draiger
16-01-16, 05:55 PM
vào game bị màn hình đen là sao anh

c1102
16-01-16, 08:40 PM
Vậy copy file từ trong server ra thư mục mail là chạy tốt hả a, thank a

Chuẩn là như vậy đó bạn, bạn copy 3 file .txt đó ra thư mục mail là ổn nhất

--- Chế độ gộp bài viết ---


vào game bị màn hình đen là sao anh

Có thể do phiên bản của game của bạn không có item đó. Bạn nên copy 3 file .txt trong sever ra thay thế 3 file .txt ở thư mục mail

minhkhanh109
16-01-16, 08:53 PM
Có thể do item của bạn trên server có khác với file item đi kèm theo code nhé

--- Chế độ gộp bài viết ---



Cái đó không vấn đề gì bạn có thể tạo đoạn code search tại database thực hiện tương tự như code trên thôi
bạn có thể hd mình tý đc không vì mình không rành về php, mong bạn giúp cho, thanks bạn :-c

c1102
17-01-16, 07:07 AM
bạn có thể hd mình tý đc không vì mình không rành về php, mong bạn giúp cho, thanks bạn :-c

Bạn mở file submit.php

Tìm


if (!$db_selected) {
die ('Không thể chọn dữ liệu: ' . mysql_error());
}

Thêm phía dưới


function searchNick($nick) {
mysql_query('SET NAMES "utf8" COLLATE "utf8_general_ci"');
$result = mysql_query("SELECT `hero_name`, `combine_id`, `server_id` FROM `users` WHERE `hero_name` LIKE '%$nick%'");
while($row = mysql_fetch_assoc($result)) {
$id = $row[combine_id];
$sid = $row[server_id];
$nick = $row[hero_name];
$out .= "<div class='hint'>$id <a href='#' onclick=\"hint('HintNick', '$nick')\"><span style='color: #16aa03'>s".$sid.".".$nick."</span></a></div>";
}
return $out;
}
if (isset($_POST['nick'])) {
echo searchNick($_POST['nick']);
exit();
}

Mở file index

Tìm


<li>
<label for="name">Tên Trong Game</label>
<input type="text" name="name" maxlength="100" value="">
<span>Tên trong Game</span>
</li>

Thay thế



<li>
<label for="name">Tên Trong Game</label>
<input type="text" name="name" id="InputHintNick" maxlength="100" value="" onkeyup="searchNick(this.value)">
<span id="HintNick">Tên trong Game</span>
</li>

Mở file pv.js

Thêm function


function searchNick(val) {
if (val.length >= 2) {
if (window.XML<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>) {
nick=new XML<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>();
} else {
nick=new ActiveXObject("Microsoft.XMLHTTP");
}
nick.onreadystatechange=function() {
if(nick.readyState == 1 || nick.readyState == "loading") {
document.getElementById("HintNick").innerHTML="Xin chờ trong giây lát";
}
if (nick.readyState==4 && nick.status==200) {
document.getElementById("HintNick").innerHTML=nick.responseText;
}
}
nick.open("POST","submit.php",true);
nick.setRequestHeader("Content-type","application/x-<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>");
nick.send("nick="+val);
}
}

Chúc bạn thành công

kenhoang
17-01-16, 12:02 PM
Bạn mở file submit.php

Tìm


if (!$db_selected) {
die ('Không thể chọn dữ liệu: ' . mysql_error());
}

Thêm phía dưới


function searchNick($nick) {
mysql_query('SET NAMES "utf8" COLLATE "utf8_general_ci"');
$result = mysql_query("SELECT `hero_name`, `combine_id`, `server_id` FROM `users` WHERE `hero_name` LIKE '%$nick%'");
while($row = mysql_fetch_assoc($result)) {
$id = $row[combine_id];
$sid = $row[server_id];
$nick = $row[hero_name];
$out .= "<div class='hint'>$id <a href='#' onclick=\"hint('HintNick', '$nick')\"><span style='color: #16aa03'>s".$sid.".".$nick."</span></a></div>";
}
return $out;
}
if (isset($_POST['nick'])) {
echo searchNick($_POST['nick']);
exit();
}

Mở file index

Tìm


<li>
<label for="name">Tên Trong Game</label>
<input type="text" name="name" maxlength="100" value="">
<span>Tên trong Game</span>
</li>

Thay thế



<li>
<label for="name">Tên Trong Game</label>
<input type="text" name="name" id="InputHintNick" maxlength="100" value="" onkeyup="searchNick(this.value)">
<span id="HintNick">Tên trong Game</span>
</li>

Mở file pv.js

Thêm function


function searchNick(val) {
if (val.length >= 2) {
if (window.XML<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>) {
nick=new XML<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>();
} else {
nick=new ActiveXObject("Microsoft.XMLHTTP");
}
nick.onreadystatechange=function() {
if(nick.readyState == 1 || nick.readyState == "loading") {
document.getElementById("HintNick").innerHTML="Xin chờ trong giây lát";
}
if (nick.readyState==4 && nick.status==200) {
document.getElementById("HintNick").innerHTML=nick.responseText;
}
}
nick.open("POST","submit.php",true);
nick.setRequestHeader("Content-type","application/x-<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>");
nick.send("nick="+val);
}
}

Chúc bạn thành công

bị lỗi này bạn oi8

[17-Jan-2016 11:14:15 Asia/Krasnoyarsk] PHP Notice: Use of undefined constant combine_id - assumed 'combine_id' in C:\phongvan\guithu\submit.php on line 20
[17-Jan-2016 11:14:15 Asia/Krasnoyarsk] PHP Notice: Use of undefined constant server_id - assumed 'server_id' in C:\phongvan\guithu\submit.php on line 21
[17-Jan-2016 11:14:15 Asia/Krasnoyarsk] PHP Notice: Use of undefined constant hero_name - assumed 'hero_name' in C:\phongvan\guithu\submit.php on line 22

c1102
17-01-16, 01:27 PM
bị lỗi này bạn oi8

[17-Jan-2016 11:14:15 Asia/Krasnoyarsk] PHP Notice: Use of undefined constant combine_id - assumed 'combine_id' in C:\phongvan\guithu\submit.php on line 20
[17-Jan-2016 11:14:15 Asia/Krasnoyarsk] PHP Notice: Use of undefined constant server_id - assumed 'server_id' in C:\phongvan\guithu\submit.php on line 21
[17-Jan-2016 11:14:15 Asia/Krasnoyarsk] PHP Notice: Use of undefined constant hero_name - assumed 'hero_name' in C:\phongvan\guithu\submit.php on line 22

Bạn tìm dòng đoạn này


$id = $row[combine_id];
$sid = $row[server_id];
$nick = $row[hero_name];

Thay thế


if ($row[combine_id]) { $id = $row[combine_id]; }
if ($row[server_id]) { $sid = $row[server_id]; }
if ($row[hero_name]) { $nick = $row[hero_name]; }

trduc58
17-01-16, 03:37 PM
tải file về rồi up vào đâu bạn ơi . mình chơi ofline nhập CSDL s bạn

c1102
17-01-16, 03:47 PM
tải file về rồi up vào đâu bạn ơi . mình chơi ofline nhập CSDL s bạn

Chắc là bạn dùng essamp và chưa thay đổi gì thì bạn up vào <b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b> và xem file configuration.property cấu hình thế nào thì điền thông tin khớp như vậy.

Link truy cập sẽ là <b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

db_user= ? // Tên đăng nhập CSDL
db_passwd= ? // Mật khẩu
db_url = 127.0.0.1:3306/? // Tên CSDL

Dấu ? đó là bạn xem ở trong file của bạn là gì

kenhoang
18-01-16, 12:34 PM
Bạn tìm dòng đoạn này


$id = $row[combine_id];
$sid = $row[server_id];
$nick = $row[hero_name];

Thay thế


if ($row[combine_id]) { $id = $row[combine_id]; }
if ($row[server_id]) { $sid = $row[server_id]; }
if ($row[hero_name]) { $nick = $row[hero_name]; }


Đã fix dc lỗi này r bạn mà vẫn còn thông báo 1 lỗi này
PHP Notice: Undefined offset: 449 in C:\phongvan\guithu\search.php on line 39 nên vẫn chưa thấy thư vào game
cái này gửi ở S1 hoặc S2 vẫn dc hả bạn

c1102
18-01-16, 02:22 PM
Đã fix dc lỗi này r bạn mà vẫn còn thông báo 1 lỗi này
PHP Notice: Undefined offset: 449 in C:\phongvan\guithu\search.php on line 39 nên vẫn chưa thấy thư vào game
cái này gửi ở S1 hoặc S2 vẫn dc hả bạn

Cái đó không phải lỗi mà chỉ là cảnh báo của PHP thôi, bạn tắt nó đi


error_reporting( error_reporting() & ~E_NOTICE );

hoặc cấu hình php.ini


error_reporting=E_ALL & ~E_NOTICE

Gửi thư theo combine_id nên dù là s nào thì cũng gửi được nó cứ theo combine_id gửi thôi

trduc58
18-01-16, 08:44 PM
Chắc là bạn dùng essamp và chưa thay đổi gì thì bạn up vào <b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b> và xem file configuration.property cấu hình thế nào thì điền thông tin khớp như vậy.

Link truy cập sẽ là <b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

db_user= ? // Tên đăng nhập CSDL
db_passwd= ? // Mật khẩu
db_url = 127.0.0.1:3306/? // Tên CSDL

Dấu ? đó là bạn xem ở trong file của bạn là gì

thanks bạn . để mình config thử :v

kenhoang
19-01-16, 12:59 AM
Cái đó không phải lỗi mà chỉ là cảnh báo của PHP thôi, bạn tắt nó đi


error_reporting( error_reporting() & ~E_NOTICE );

hoặc cấu hình php.ini


error_reporting=E_ALL & ~E_NOTICE

Gửi thư theo combine_id nên dù là s nào thì cũng gửi được nó cứ theo combine_id gửi thôi

Uhm bạn , mà code này gửi mail cho bản H20 được k bạn , mình làm ok hết r mà ko hiểu sao nó k có thư:|

Mình chạy ở IIS nó có báo 2 dòng này


Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\phongvan\guithu\submit.php on line 10

Deprecated: Function ereg_replace() is deprecated in C:\phongvan\guithu\submit.php on line 100

LangTuXi
19-01-16, 07:30 AM
cái này max vật phẩm là 100 à bạn. mình gửi từ 200 trở lên thì không nhận được.

c1102
19-01-16, 10:33 AM
Uhm bạn , mà code này gửi mail cho bản H20 được k bạn , mình làm ok hết r mà ko hiểu sao nó k có thư:|

Mình chạy ở IIS nó có báo 2 dòng này


Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\phongvan\guithu\submit.php on line 10

Deprecated: Function ereg_replace() is deprecated in C:\phongvan\guithu\submit.php on line 100


Deprecated: Function ereg_replace() is deprecated in C:\phongvan\guithu\submit.php on line 100

Bạn thay ereg_replace = preg_replace

Code này dùng cho H20 nhé bạn.

2 dòng đó là thông báo trong tương lai sẽ bỏ hàm mysql_connect() và sử dụng mysqli bạn cấu hình tắt thông báo đi hoặc nếu muốn thì bạn cấu hình lại sử dụng mysqli nhé. Còn về cách thực hiện sao thì bạn hỏi google. Chúc bạn thành công.

--- Chế độ gộp bài viết ---


cái này max vật phẩm là 100 à bạn. mình gửi từ 200 trở lên thì không nhận được.

Cái này gửi toàn bộ vật phẩm chứ không giới hạn, bạn copy 3 file này medicine.txt, equipment.txt, package.txt từ server của bạn ra thay thế cho 3 file đi kèm thư mục sendmailpv

kenhoang
19-01-16, 08:04 PM
Kỳ ta mình làm ok hết trong DB có hiện mà ko có thư trong game .
mà bác có nhận viết code ko nhỉ nếu có cho mình xin yahoo hoặc fb :">

nghichtu91
19-01-16, 09:53 PM
Kỳ ta mình làm ok hết trong DB có hiện mà ko có thư trong game .
mà bác có nhận viết code ko nhỉ nếu có cho mình xin yahoo hoặc fb :">

ta đây :D .................................................. .......

c1102
19-01-16, 10:26 PM
Kỳ ta mình làm ok hết trong DB có hiện mà ko có thư trong game .
mà bác có nhận viết code ko nhỉ nếu có cho mình xin yahoo hoặc fb :">

Code này chỉ import vào db, nôm na là outgame chứ không phải ingame nên phải thoát vào lại mới thấy mail nhé bạn. Còn một số item đặc biệt cũng không biết nguyên nhân tại sao nó không báo mail đâu :(, đa số thông dụng thì ok :). Mình chỉ amateur thôi nên không dám nhận code

sin1992
05-04-16, 11:06 AM
cái này thêm mục super_weapon_gem.txt được không ad

nghichtu91
05-04-16, 12:00 PM
làm cho nó send mail qua gs, thì không phải dùng đến cách này :D