با سلام میخواستم بدونم چجور میشه یک فایل مثلا اکسل یا خوده sql رو با استفاده از کد های php به mysql تزریق کرد ؟
@mohaligateway @juza66 @ajdar9667
سلام
اول باید ببینید فرمت فایل اکسل چی هست چون معمولا فایل های اکسلی مثل csv با زبان فارسی مشکل دارن.
برای وارد کردن اطلاعات داخل دیتا بیس توسط php باید ابتدا file csv رو import کنید و سپس با insert query وارد database کنید. فایل های html به صورت زیر هست.
<h2>Import CSV file into Mysql using PHP</h2>
<div id="response"
class="<?php if(!empty($type)) { echo $type . " display-block"; } ?>">
<?php if(!empty($message)) { echo $message; } ?>
</div>
<div class="outer-scontainer">
<div class="row">
<form class="form-horizontal" action="" method="post"
name="frmCSVImport" id="frmCSVImport"
enctype="multipart/form-data">
<div class="input-row">
<label class="col-md-4 control-label">Choose CSV
File</label> <input type="file" name="file"
id="file" accept=".csv">
<button type="submit" id="submit" name="import"
class="btn-submit">Import</button>
<br />
</div>
</form>
</div>
<?php
$sqlSelect = "SELECT * FROM users";
$result = $db->select($sqlSelect);
if (! empty($result)) {
?>
<table id='userTable'>
<thead>
<tr>
<th>User ID</th>
<th>User Name</th>
<th>First Name</th>
<th>Last Name</th>
</tr>
</thead>
<?php
foreach ($result as $row) {
?>
<tbody>
<tr>
<td><?php echo $row['userId']; ?></td>
<td><?php echo $row['userName']; ?></td>
<td><?php echo $row['firstName']; ?></td>
<td><?php echo $row['lastName']; ?></td>
</tr>
<?php
}
?>
</tbody>
</table>
<?php } ?>
</div>
و فایل های jquery
<script type="text/javascript">
$(document).ready(function() {
$("#frmCSVImport").on("submit", function () {
$("#response").attr("class", "");
$("#response").html("");
var fileType = ".csv";
var regex = new RegExp("([a-zA-Z0-9\s_\\.\-:])+(" + fileType + ")$");
if (!regex.test($("#file").val().toLowerCase())) {
$("#response").addClass("error");
$("#response").addClass("display-block");
$("#response").html("Invalid File. Upload : <b>" + fileType + "</b> Files.");
return false;
}
return true;
});
});
</script>
و حالا مرحله insertion توسط php بعد از upload
<?php
use Phppot\DataSource;
require_once 'DataSource.php';
$db = new DataSource();
$conn = $db->getConnection();
if (isset($_POST["import"])) {
$fileName = $_FILES["file"]["tmp_name"];
if ($_FILES["file"]["size"] > 0) {
$file = fopen($fileName, "r");
while (($column = fgetcsv($file, 10000, ",")) !== FALSE) {
$userId = "";
if (isset($column[0])) {
$userId = mysqli_real_escape_string($conn, $column[0]);
}
$userName = "";
if (isset($column[1])) {
$userName = mysqli_real_escape_string($conn, $column[1]);
}
$password = "";
if (isset($column[2])) {
$password = mysqli_real_escape_string($conn, $column[2]);
}
$firstName = "";
if (isset($column[3])) {
$firstName = mysqli_real_escape_string($conn, $column[3]);
}
$lastName = "";
if (isset($column[4])) {
$lastName = mysqli_real_escape_string($conn, $column[4]);
}
$sqlInsert = "INSERT into users (userId,userName,password,firstName,lastName)
values (?,?,?,?,?)";
$paramType = "issss";
$paramArray = array(
$userId,
$userName,
$password,
$firstName,
$lastName
);
$insertId = $db->insert($sqlInsert, $paramType, $paramArray);
if (! empty($insertId)) {
$type = "success";
$message = "CSV Data Imported into the Database";
} else {
$type = "error";
$message = "Problem in Importing CSV Data";
}
}
}
}
?>
دقت کنید که نمی تونید فرمت های دیگه رو از اکسل داخل جدول قرار بدید باید حتما csv باشد.
@behzadi
@Rezanp7 خب عزیزه دل میخام یک صفحه رو بنویسم و با php مثلا با یک کوئری اجراش کنم الان من چجوری میتونم این کار رو بکنم ؟ @ali.bayat شما نمیدونید؟
@behzadi
اول باید اون فایل رو import کنید توی mysql تا جدول هاتون اوکی بشه.
بعد هر کوئری که میخواین رو بگید کمکتون کنن اینجا دوستان
@Rezanp7 خب عزیز اینرو میدونم میخام از طریقه پنله کاربری در سایت ایمپورتش کنم نخام برم داخل phpmyadmin
سلام
اول باید ببینید فرمت فایل اکسل چی هست چون معمولا فایل های اکسلی مثل csv با زبان فارسی مشکل دارن.
برای وارد کردن اطلاعات داخل دیتا بیس توسط php باید ابتدا file csv رو import کنید و سپس با insert query وارد database کنید. فایل های html به صورت زیر هست.
<h2>Import CSV file into Mysql using PHP</h2>
<div id="response"
class="<?php if(!empty($type)) { echo $type . " display-block"; } ?>">
<?php if(!empty($message)) { echo $message; } ?>
</div>
<div class="outer-scontainer">
<div class="row">
<form class="form-horizontal" action="" method="post"
name="frmCSVImport" id="frmCSVImport"
enctype="multipart/form-data">
<div class="input-row">
<label class="col-md-4 control-label">Choose CSV
File</label> <input type="file" name="file"
id="file" accept=".csv">
<button type="submit" id="submit" name="import"
class="btn-submit">Import</button>
<br />
</div>
</form>
</div>
<?php
$sqlSelect = "SELECT * FROM users";
$result = $db->select($sqlSelect);
if (! empty($result)) {
?>
<table id='userTable'>
<thead>
<tr>
<th>User ID</th>
<th>User Name</th>
<th>First Name</th>
<th>Last Name</th>
</tr>
</thead>
<?php
foreach ($result as $row) {
?>
<tbody>
<tr>
<td><?php echo $row['userId']; ?></td>
<td><?php echo $row['userName']; ?></td>
<td><?php echo $row['firstName']; ?></td>
<td><?php echo $row['lastName']; ?></td>
</tr>
<?php
}
?>
</tbody>
</table>
<?php } ?>
</div>
و فایل های jquery
<script type="text/javascript">
$(document).ready(function() {
$("#frmCSVImport").on("submit", function () {
$("#response").attr("class", "");
$("#response").html("");
var fileType = ".csv";
var regex = new RegExp("([a-zA-Z0-9\s_\\.\-:])+(" + fileType + ")$");
if (!regex.test($("#file").val().toLowerCase())) {
$("#response").addClass("error");
$("#response").addClass("display-block");
$("#response").html("Invalid File. Upload : <b>" + fileType + "</b> Files.");
return false;
}
return true;
});
});
</script>
و حالا مرحله insertion توسط php بعد از upload
<?php
use Phppot\DataSource;
require_once 'DataSource.php';
$db = new DataSource();
$conn = $db->getConnection();
if (isset($_POST["import"])) {
$fileName = $_FILES["file"]["tmp_name"];
if ($_FILES["file"]["size"] > 0) {
$file = fopen($fileName, "r");
while (($column = fgetcsv($file, 10000, ",")) !== FALSE) {
$userId = "";
if (isset($column[0])) {
$userId = mysqli_real_escape_string($conn, $column[0]);
}
$userName = "";
if (isset($column[1])) {
$userName = mysqli_real_escape_string($conn, $column[1]);
}
$password = "";
if (isset($column[2])) {
$password = mysqli_real_escape_string($conn, $column[2]);
}
$firstName = "";
if (isset($column[3])) {
$firstName = mysqli_real_escape_string($conn, $column[3]);
}
$lastName = "";
if (isset($column[4])) {
$lastName = mysqli_real_escape_string($conn, $column[4]);
}
$sqlInsert = "INSERT into users (userId,userName,password,firstName,lastName)
values (?,?,?,?,?)";
$paramType = "issss";
$paramArray = array(
$userId,
$userName,
$password,
$firstName,
$lastName
);
$insertId = $db->insert($sqlInsert, $paramType, $paramArray);
if (! empty($insertId)) {
$type = "success";
$message = "CSV Data Imported into the Database";
} else {
$type = "error";
$message = "Problem in Importing CSV Data";
}
}
}
}
?>
دقت کنید که نمی تونید فرمت های دیگه رو از اکسل داخل جدول قرار بدید باید حتما csv باشد.
@behzadi
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟