gpt4 book ai didi

javascript - 使用 PHP 和 Ajax 读取 txt 文件并将值插入数据库

转载 作者:行者123 更新时间:2023-11-30 01:09:52 25 4
gpt4 key购买 nike

我有一个文本文件,其中包含带有换行符的值,如下所示

Lawrence
Barse
Sifron
etc
etc

我想读取此文件并将每个值插入到数据库表中。我希望前端页面显示有关插入的每个值的信息,例如

Value Lawrence inserted successfully

所以,我编写了这样的 PHP 代码

$count = 0;
$fileName = "names.txt";
$fhandler = fopen($fileName, 'r');
$theData = fread($fhandler, filesize($fileName));
fclose($fhandler);

$myArray = explode("\n", $theData);

因此变量 $myArray 包含文本文件中的所有值,

接下来我编写了一个 Javascript 函数来将值从 $myArray[0] 发送到我的数据插入 php 脚本页面,如下所示

<script >
var cnt;
function init()
{
var str = "<?php echo $myArray[$count] ?>";
alert("Str is "+str);
}
function writeData(data)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("my_content").innerHTML += xmlhttp.responseText;
repeat();
}
}
$data = ""+data+"";
xmlhttp.open("GET","returnVals.php?b="+$data,true);
xmlhttp.send();
}
function repeat()
{
<?php echo $count++; ?>
cnt = "<?php echo $count ?>";
var val = "<?php echo $myArray[$count] ?>";
alert("Count is "+cnt+" and Val is "+val);
writeData(val);
}
</script>

我的 returnVals.php 是处理所有数据插入、回显和输出的脚本,我在响应处理程序中打印这些数据。

另外,我知道我在 javascript 中回显 php 值,这不是标准的编程方式,但我只是没有看到任何其他选择。我的 Javascript Repeat() 函数重新根据 $count 值调用 writeData 函数,但我无法增加该值。

有没有更好的方法来实现这一目标......

提前致谢!!!

最佳答案

我遇到过几次。我为长时间运行的导入进程开发了一种非 AJAX 模式,这些进程在完成之前就超过了 PHP 超时。有一天我可能会将其升级到 AJAX,但这对我来说似乎非常简单。希望对您有所帮助。

模式

  • 跳转到新的起点
  • 输出固定数量的新记录
  • 写出继续链接
  • 自动重新加载(可选)到继续链接

代码

<?php
// variables
$num_rows = 25; // number of rows to handle per page view

// get the starting index
$start_at = (isset($_REQUEST['start'])) ? $_REQUEST['start'] : 0;
$new_start = $start_at + $num_rows;

// skip ahead to $start_at
$in_file = fopen(...);
for ($i = 0; $i < $start_at; $i++) {
// skip over this many rows
fgets($in_file);
}

// process num_rows
for ($i = 0; $i < $num_rows; $i++) {
$line = fgets($in_file);

// process the line

$morework = !!$line; // fgets returns FALSE when done
}

// write out continue link with auto reload trigger
if ($morework) {
echo "<a id='clickme' href='/my/page?start={$new_start}'>Continue from {$new_start}</a";
echo "<script>";
echo "window.location = document.getElementById('clickme').href";
echo "</script>";
} else {
echo "DONE";
}

关于javascript - 使用 PHP 和 Ajax 读取 txt 文件并将值插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19523878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com