อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย tanapong » 27/04/2020 2:06 pm

พี่ครับ ได้แล้วครับ ตาบอดอยู่นานมาก แค่จุดๆเดียว T^T ขอบคุณมากๆนะครับ

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย mindphp » 27/04/2020 1:49 pm

แก้

โค้ด: เลือกทั้งหมด

$sql = "CREATE TABLE  $Work (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
rack  VARCHAR(30) NOT NULL,
position VARCHAR(30) NOT NULL,

)";
เป็น

โค้ด: เลือกทั้งหมด

$sql = "CREATE TABLE  $Work (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
rack  VARCHAR(30) NOT NULL,
position VARCHAR(30) NOT NULL
)";

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย tanapong » 27/04/2020 1:36 pm

โค้ด: เลือกทั้งหมด

<?php
	$serverName = "localhost";
	$userName = "root";
	$userPassword = "root1234";
	$dbName = "login_db";
	

  $conn = mysqli_connect($serverName,$userName,$userPassword,$dbName);
  ?>
  
<style>
body  {
  background-image: url("paper.gif");
  background-color: #cccccc;
}
.center {
  margin: auto;
  width: 60%;
  border: 3px solid #73AD21;
  padding: 10px;
}

</style>
<div align="center" style="border  ">
<html>
	--SECTION NAME--
	<body>	
	<form action="add_section.php" method="post">
	<input type="text" name="Work">
	<br/>
    <br/>
	<input type="submit" value="ADD">
	</form>
	<br/>

อันนี้เป็นฟอร์มรับค่าครับ

โค้ด: เลือกทั้งหมด

<?php

 $Work = $_POST['Work'];
 

    $serverName = "localhost";
	$userName = "root";
	$userPassword = "root1234";
	$dbName = "login_db";

	$conn = mysqli_connect($serverName,$userName,$userPassword,$dbName);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// sql to create table

$sql = "CREATE TABLE  $Work (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
rack  VARCHAR(30) NOT NULL,
position VARCHAR(30) NOT NULL,

)";

if ($conn->query($sql) === TRUE) {
    echo "Table  created successfully";
} else {
    echo "Error creating table: " . $conn->error;
}

$conn->close();
?> 
Error creating table: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 6

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย mindphp » 27/04/2020 12:03 pm

รบกวนช่วย แปะโค้ด ที่ Error ลงมาดูหน่อยครับ
โค้ด และ ข้อความที่ Error

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย tanapong » 27/04/2020 2:10 am

Programming - PHP-1.png
Programming - PHP-2.png
Programming - PHP-3.png
มีอะไรผิดพลาดตรงไหนครับ รบกวนด้วยครับ

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย mindphp » 26/04/2020 9:36 pm

โค้ดจากลิงค์ที่ลงมาแก้ตามนี้

สร้างฟอร์มเพื่อกรอกข้อมูลตาม Fields ที่ต้องการ
และตัวไฟล์ .php รับค่าแล้วส่งมาตามตัวอย่าง

โค้ด: เลือกทั้งหมด

 <?php
 $MyGuests = $_POST['$MyGuests'];
 $firstname  = $_POST['firstname']; 
//ตามที่ต้องการ ...
 
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// sql to create table
$sql = "CREATE TABLE $MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
$firstname  VARCHAR(30) NOT NULL,
$lastname VARCHAR(30) NOT NULL,
$email VARCHAR(50),
$reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)";

if ($conn->query($sql) === TRUE) {
    echo "Table MyGuests created successfully";
} else {
    echo "Error creating table: " . $conn->error;
}

$conn->close();
?> 
ศึกษาเพิ่มเติมได้ที่หมวดนี้ viewforum.php?f=74

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย tanapong » 26/04/2020 7:15 pm

อยากให้สามารถกรอกชื่อจากเว็ปครับ แต่เอาค่าที่กรอกจากเว็ปมาสร้าง table
สมมุติรูปที่ 1 ผมใส่คำว่า hematology แล้วกด add จากหน้าเว็ป จะได้เทเบิล hematology ในหน้า phpMyadmin ที่อยู่ใน login_db เหมือน chemistry ครับ
ยังไม่รู้แนวทางการเขียนให้ได้แบบนี้ พอดีเพิ่งหัดเขียนครับ

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย mindphp » 26/04/2020 6:42 pm

หมายถึง อยากที่ ให้การทำงานเหมือน phpMyadmin หรือครับ สร้างตาราง ได้

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย tanapong » 26/04/2020 3:50 pm

Programming - PHP-1.png
Programming - PHP-2.png
อยากให้สามารถกรอกชื่อตามรูปที่ 1 แล้ว create table ใน login_db เหมือนกับ chemistry

เท่าที่หาไกด์จะเป็น https://www.w3schools.com/php/php_mysql ... _table.asp
แต่แบบนี้จะระบุ ชื่อเทิล ใน โค๊ดเลยครับ

Re: อยากทำ create table แบบกรอกชื่อ table เองผ่านเว็ป

โดย mindphp » 26/04/2020 1:38 am

ตารางยังไงครับ ขอบรายละเอียด หรือภาพ ประกอบคำถามหน่อยครับ

ข้างบน