ThaiSEOBoard.com

พัฒนาเว็บไซต์ => Programming => ข้อความที่เริ่มโดย: affsom ที่ 01 กรกฎาคม 2015, 22:55:47



หัวข้อ: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: affsom ที่ 01 กรกฎาคม 2015, 22:55:47
คือเพิ่งลองหัด PHP กับ sql งงไปหมดครับ  :P :P

คือผมมี2เว็บ ต้องการให้เวลาสมัครที่นึงแต่สามารถใช้userกับpassได้2เว็บอ่ะครับ แต่เวลาจะสมัครให้สมัครได้แค่ที่เว็บเดียวครับ
ไปแกะๆแงะๆมา ที่เว็บที่จะให้สมัครมีโค๊ดตัวนี้ ซึ่งจะดึงข้อมูลการใช้งานDatabaseมาจาก config

โค๊ด:
$this->db->query("INSERT INTO " . DB_PREFIX . "customer SET email = '" . $this->db->escape($data['email']) . "',password = '" . $this->db->escape(sha1($salt . sha1($salt . sha1($data['password'])))) . "';



คือจะเอา user กับ pass ที่สมัครจากเวบแรกไปลงที่

Table = ac_users
row   = user_login
row   = user_email

ของ Database ชื่อ acsite

แต่ข้อมูลการใช้งาน Database อีกอัน เป็นแบบนี้
โค๊ด:
define('DB_NAME', 'acsite');
define('DB_USER', 'user');
define('DB_HOST', 'localhost');
$table_prefix  = 'ac_';



แล้วที่เวบที่จะให้สมัครเวลามีการเปลี่ยน Password จะอัพเดทข้อมูลแบบนี้
โค๊ด:
public function editPassword($email, $password) {
      $this->db->query("UPDATE " . DB_PREFIX . "customer SET salt = '" . $this->db->escape($salt = substr(md5(uniqid(rand(), true)), 0, 9)) . "', password = '" . $this->db->escape(sha1($salt . sha1($salt . sha1($password)))) . "' WHERE LOWER(email) = '" . $this->db->escape(utf8_strtolower($email)) . "'");
}

ต้องการให้อีกเวบอัพเดทด้วยครับ

ต้องเขียนโคดยังไงครับ


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: narincr ที่ 02 กรกฎาคม 2015, 08:20:33
สร้างตัว Connection อีกตัวไปยังเว็บใหม่
แต่เว็บอีกตัวต้องรองรับการ Connect ไปยังนอกเว็บ ที่ไม่ใช่มาจาก localhost ภายในตัวเองด้วยนะครับ

โดยส่วนมากเว็บ hosting ทั่วไปที่เป็นแบบธรรมดา จะไม่อนุญาติ Connect Database จากภายนอกเซิฟเวอร์ตัวเองครับ หรือบางเจ้าก็รองรับครับ
อีกอันนึงก็ใช้ วิธีการส่งค่าแบบ GET ไปยัง URL แล้วเขียนให้รับเฉพาะ IP ของเว็บแรกที่เราจะติดต่อค่าส่งไป อาจจะมี Username + Password ส่งเข้าไปด้วยยิ่งดีครับ แต่ต้องเข้ารหัส base64 และเพิ่มตัวอักษรบางตัวเข้าไป และ Decode ก็ได้ครับ
และเก็บ URL นี้เป็นความลับครับ ถึงรู้ว่า URL ไหน ถ้าเขียนดัก IP ไว้ก็เข้าไม่ได้อยู่ดีครับ


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: affsom ที่ 02 กรกฎาคม 2015, 08:25:39
สร้างตัว Connection อีกตัวไปยังเว็บใหม่
แต่เว็บอีกตัวต้องรองรับการ Connect ไปยังนอกเว็บ ที่ไม่ใช่มาจาก localhost ภายในตัวเองด้วยนะครับ

โดยส่วนมากเว็บ hosting ทั่วไปที่เป็นแบบธรรมดา จะไม่อนุญาติ Connect Database จากภายนอกเซิฟเวอร์ตัวเองครับ หรือบางเจ้าก็รองรับครับ
อีกอันนึงก็ใช้ วิธีการส่งค่าแบบ GET ไปยัง URL แล้วเขียนให้รับเฉพาะ IP ของเว็บแรกที่เราจะติดต่อค่าส่งไป อาจจะมี Username + Password ส่งเข้าไปด้วยยิ่งดีครับ แต่ต้องเข้ารหัส base64 และเพิ่มตัวอักษรบางตัวเข้าไป และ Decode ก็ได้ครับ
และเก็บ URL นี้เป็นความลับครับ ถึงรู้ว่า URL ไหน ถ้าเขียนดัก IP ไว้ก็เข้าไม่ได้อยู่ดีครับ


อยู่ในโฮสเดียวกันครับ ต่างแค่คนละDB ครับ ลองทำไม่ได้เลยครับ

 :wanwan017: :wanwan017:


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: narincr ที่ 02 กรกฎาคม 2015, 08:31:20
Account เดียวกันด้วยหรือเปล่าครับ ใน DirectAdmin Domain เดียวกันด้วยไหม
ถ้าใช้ User เดียวไม่น่าจะเป็นปัญหาเท่าไรนะครับ แค่เปลี่ยนชื่อ Database เองครับ


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: affsom ที่ 02 กรกฎาคม 2015, 08:37:55
account pass เดียวกันครับ คือจะใช้เวลาคนมาสมัครที่opencart แล้ว User กับ pass จะไปสมัครที่ wordpress ด้วยครับ
แต่opencart มันจะแยกเป็นออกมาเป็น model , controller ประมาณนี้ครับ ลองทำแบบปกติที่ไม่ทำผ่านOpencartก็ได้นะครับ แต่ผมงงกับโค๊ดของระบบOpencart

 :wanwan017: :wanwan017:


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: amazegu ที่ 02 กรกฎาคม 2015, 09:12:15
ก็ hard code หลัง $this->db->query(); มันเลยซิครับ
เปิด connection db ใหม่เลย เพราะ Opencart มันไม่รองรับการเชื่อมต่อแบบหลายๆฐานข้อมูลครับ
ที่จริงมันรองรับแหละ แต่ต้องไปตั้งค่าตั้งแต่แรก hardcode เอาง่ายกว่าครับ  :wanwan004: :wanwan004: :wanwan004:


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: affsom ที่ 02 กรกฎาคม 2015, 09:28:00
 :wanwan017: :wanwan017:

เผื่อว่าอาจเก็บ session ของuserครับ ถ้าไม่ได้คงต้องเปิดconnectอีกอัน เพิ่งรู้ครับว่าOPC ไม่รับหลายฐาน แล้วถ้าจะให้รับทำยังไงครับ


หัวข้อ: Re: PHP เพิ่มข้อมูลลง database อันอื่นยังไง
เริ่มหัวข้อโดย: talkit ที่ 02 กรกฎาคม 2015, 14:22:13
ปกติถ้าใน host เดียวกัน ก็ได้นะครับ
 :wanwan011: