สอบถามหน่อยครับติดมา3วันแล้ว OBDC กับ PHP SQL Server 2005 มันเปนเช่นนี่
Code
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near 'ำ��'., SQL state 37000 in SQLExecDirect in C:\xampp\htdocs\register\register.php on line 37
Code (PHP)
<?php include('./inc/header.php'); ?>
<h1>Registration</h1>
<?php
if(!isset($_POST['reg_username'])) $_POST['reg_username'] = '';
if(!isset($_POST['reg_email'])) $_POST['reg_email'] = '';
if(!isset($_POST['sname'])) $_POST['sname'] = '';
odbc_exec($mssql, 'USE [ACCOUNT_DBF]');
$checkacc = odbc_exec($mssql, 'SELECT COUNT(*) as count FROM [ACCOUNT_TBL] WHERE account=\''.mssql_escape_string($_POST['reg_username']).'\'');
$checkmail = odbc_exec($mssql, 'SELECT COUNT(*) as count FROM [ACCOUNT_TBL_DETAIL] WHERE email=\''.mssql_escape_string($_POST['reg_email']).'\'');
$checkmail = odbc_exec($mssql, 'SELECT COUNT(*) as count FROM [ACCOUNT_TBL_DETAIL] WHERE sname=\''.mssql_escape_string($_POST['sname']).'\'');
$errors = array();
if(empty($_POST['reg_username']) || empty($_POST['reg_password']) || empty($_POST['reg_confirmpw']) || empty($_POST['reg_email']))
$errors[] = 'You must fill-in all fields!';
if(!empty($_POST['reg_username']) && odbc_result($checkacc, 'count') > 0)
$errors[] = 'Username does already exist!';
if(!empty($_POST['reg_email']) && odbc_result($checkmail, 'count') > 0)
$errors[] = 'E-Mail address does already exist!';
if(!empty($_POST['reg_username']) && (strlen($_POST['reg_username']) > 10 || strlen($_POST['reg_username']) < 4))
$errors[] = 'Your username must contain 4 - 10 characters!';
if(!empty($_POST['reg_password']) && (strlen($_POST['reg_password']) > 12 || strlen($_POST['reg_password']) < 6))
$errors[] = 'Your password must contain 6 - 12 characters!';
if((!empty($_POST['reg_password']) && !empty($_POST['reg_confirmpw'])) && $_POST['reg_password'] != $_POST['reg_confirmpw'])
$errors[] = 'The password confirmation doesn\'t match!';
if(!empty($_POST['reg_email']) && !preg_match('/^[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+\.[a-zA-Z]{2,4}$/', $_POST['reg_email']))
$errors[] = 'Your e-Mail address is not valid!';
if(isset($_POST['reg_submit'])) {
if(count($errors) > 0) {
echo '<div class="fail">';
foreach($errors as $error) {
echo $error.'<br/>';
}
echo '</div>';
} else {
odbc_exec($mssql, 'INSERT INTO [dbo].[ACCOUNT_TBL] (account, password, isuse, member, id_no1, id_no2, realname, reload, OldPassword, TempPassword, cash) VALUES (N\''.mssql_escape_string($_POST['reg_username']).'\', N\''.mssql_escape_string(($_POST['pwdsalt'].$_POST['reg_password'])).'\', N\'T\', N\'A\', NULL, 0, N\'P\', NULL, 0, NULL, 0)');
odbc_exec($mssql, 'INSERT INTO [dbo].[ACCOUNT_TBL_DETAIL] (account, gamecode, tester, m_chLoginAuthority, regdate, BlockTime, EndTime, WebTime, isuse, secession, email) VALUES (N\''.mssql_escape_string($_POST['reg_username']).'\', N\'A000\', N\'2\', N\'F\', \''.mssql_escape_string(date('Ymd H:i:s')).'\', N\'20010101\', N\'20990101\', N\'20050101\', N\'O\', NULL, N\''.mssql_escape_string($_POST['reg_email']).'\''.mssql_escape_string($_POST['sname']).')');
echo '<div class="success">Your account has successfully been created!</div>';
}
}
?>
<form method="post">
<table>
<tr>
<td>Username:</td>
<td><input type="text" name="reg_username" maxlength="10" /></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="reg_password" maxlength="11" /></td>
</tr>
<tr>
<td>Confirm PW:</td>
<td><input type="password" name="reg_confirmpw" /></td>
</tr>
<tr>
<td>E-Mail:</td>
<td><input type="text" name="reg_email" /></td>
<tr>
<td>ชื่อ-นามสกุล:</td>
<td><input type="text" name="sname" /></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="reg_submit" value="Create Account" /></td>
</tr>
</table>
</form>
<?php include('./inc/footer.php'); ?>
Tag : Ms SQL Server 2005, HTML/CSS, Windows Azure, Web Hosting
ประวัติการแก้ไข 2013-09-16 01:48:59
Date :
2013-09-16 01:44:20
By :
flyff_project
View :
1484
Reply :
3
SQL ผิดน่ะครับ ลอง echo เอา SQL ออกมาดูหน่อยครับ
Date :
2013-09-16 08:56:57
By :
mr.win
ครับตอนนี่ผมพอทราบแล้วแต่ก็ติดๆอยู่ๆเหองงเลยตรงนั้นผ่านแล้วแต่มาติด แง็กนี่นานเลยครับ
Code (PHP)
Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: READY-24A306F96 in C:\xampp\htdocs\refill\connect.php on line 4
ติดต่อกับฐานข้อมูล Msql ไม่ได้
Code (PHP)
<?
//--- cutrue code --- รหัสเฉพาะตัวของสมาชิก ดูได้ที่หน้า "ข้อมูลส่วนตัว" www.cutrue.net
$cutrue_code = "1234567890-";
//--- host name --- ชื่อโฮส **ส่วนมากไม่จำเป็นต้องเปลี่ยน
$dbhost="READY-123456789";
//--- username database --- ยูสเซอร์เนมดาต้าเบสที่ใช้งาน
$dbusername="sa";
//--- password database --- พาสเวิร์ดดาต้าเบสที่ใช้งาน
$dbpassword="1234";
//--- database name --- ชื่อดาต้าเบสที่ใช้งาน
$db="ACCOUNT";
//--- login table --- ตารางที่เก็บ ยูสเซอร์เนมและพาสเวิรด์และเก็บแต้ม
$login_table="cabal_auth_table";
//--- account_id field --- ฟิลด์รหัส หรือ ฟิลด์ที่เก็บยูสเซอร์เนม
$login_account_id_field="ID";
//--- login userid field --- ฟิลด์ที่เก็บยูสเซอร์เนม
$login_userid_field="ID";
//--- login user_pass field --- ฟิลด์ที่เก็บพาสเวิร์ด
$login_user_pass_field="Password";
//--- ##### ส่วนตั้งค่าราคาบัตร กับ สิ่งที่จะได้รับ เมื่อเติมเงิน #####
//--- !!! หมายเหตุ ถ้าหากตารางของค่าต่างๆ ไม่ใช่ตารางเดียวกับ $login_table
//--- !!! ตารางของค่าต่างๆนั้น ต้องใช้ keyหรือIndex เดียวกันกับ $login_account_id_field
//--- !!! เช่น ใช้ ID เป็นหลัก
//--- database character name --- ชื่อดาต้าเบสที่ใช้งานตัวละคร
$char_db="CHARACTER_01_DBF";
$char_table = "CHARACTER_TBL";
//--- เปิดปิดการใช้งาน 0=ปิด 1=เปิด
$redchip_active=1;
//--- ตั้งค่าตำแหน่งDB ของ REDCHIP
$redchip_table="ITEM_SEND_TBL"; //--- ตารางที่เก็บ redchip
$redchip_id = "0";
$redchip[50] = 50;
$redchip[90] = 90;
$redchip[150] = 150;
$redchip[300] = 300;
$redchip[500] = 500;
$redchip[1000] = 1000;
?>
Date :
2013-09-21 01:43:28
By :
flyff_project
Load balance : Server 03