입력 한 행 및 열 수의 테이블을 만드는 양식을 만들었습니다. 입력 된 필드 테이블을 데이터베이스에 만들고 해당 값을 데이터베이스 테이블에 저장하려고합니다. 내가 사용해야하는 것을 안내해주십시오.MySQL에서 런타임에 테이블을 만들고 데이터베이스에 저장하는 방법
내 코드 : 테이블을 생성하면 서버에 대해 SQL 문을 실행입니다 :
<?php
global $Host;
global $Username;
global $password;
global $database;
function getConnection()
{
$Host = "localhost";
$Username = "root";
$password = "";
$database = "labdata";
$oMysqli = new mysqli($Host,$Username,$password,$database);
return($oMysqli);
}
?>
<html>
<head>
<title>aa</title>
</head>
<body>
<form name="report Creation" method="post">
<label for='Table'>Define Table</label>
<label for='column'>Row</label>
<input type="text" name="column"></input>
<label for='rows'>Column</label>
<input type="text" name="rows"></input>
<input type="submit" name="submit" value="submit">
</form>
</body>
</html>
<?php
function displayData($column,$rows)
{
echo "<table border='1' align='center'>";
for($i = 0;$i<$_POST['column'];$i++)
{
echo "<tr>".$i."</tr>";
for($j = 0; $j <$_POST['rows'];$j++)
{
echo "<td>" ."<input type=\"text\" name='column_$i[$j]'>"."</td>";
}
}
echo "</table>";
echo "<form>";
echo "<input type=\"submit\" name=\"ok\" value=\"ok\">";
echo "</form>";
//function displaydata($column = NULL) {if($id == NULL) Event::run('system.52');}
}
if(isset($_POST['submit']))displaydata();// Show data INSIDE form
{
$query = "CREATE TABLE Cars('$columns[$j]')";
$oMysqli = getConnection();
$oMysqli->query($query);
$Insert = "INSERT INTO Cars(Id,column[$j]) VALUES($Id,$column)";
$oMysqli = getConnection();
$oMysqli->query($Insert);
if(isset($_POST['ok']))
{
$plength = count($_POST['column']);
for($j=0;$j<$plength;$j++)
{
$b = $_POST['column'][$j];
$pa = array('column' => $b['column']);
foreach($pa as $l => $m)
{
$pa[$l] = mysql_real_escape_string($m);
}
$columns = $pa['column'];
$columns = $_POST['column'][$j];
for($n=0;$n<$columns;$n++)
{
$x= $_POST['column'][$j];
$ab = array('column' => $c['column']);
foreach($t as $u => $n)
{
$ab[$u] = mysql_real_escape_string($n);
}
$columns = $ab['column'];
$columns = $_POST['column'][$j];
}
}
}
if($result = $mysqli->query($Insert))
{
$k=0;
$column = explode(",",$_POST['columns']);
foreach($column as $c)
{
echo "<td><b>$c</b></td>\r\n";
}
echo "</tr>";
}
}
?>
가하면 phpMyAdmin 소스 코드를 탐색? – Prasanth
위와 같은 방법으로 연결 정보를 저장하지 않기를 바란다. 문서 루트 외부에 연결 정보를 넣으십시오. – allen213