使用PHP将简单的excel数据导出到MySQL中

我的客户有一个以下结构的excel文件

name | email ---------------------------- Name | email here Name | email here Name | email here Name | email here Name | email here Name | email here 

我想根据这个模式创build一个MySQL数据库表,并将数据保存到MySQL中。

我很好奇如何做到这一点。 还有一个选项需要

我们必须检查,如果相应的用户有一个正确的电子邮件地址,即forms@。

我们可以在导入时将数据检查为循环吗?

另外如何将这个数据转换为MySQL?

将这个excel文件保存为csv并运行下面的代码添加你的changings

 $source = fopen('email.csv', 'r') or die("Problem open file"); while (($data = fgetcsv($source, 1000, ",")) !== FALSE) { $name = $data[0]; $email = $data[1]; mysql_query("INSERT INTO `table` (`name`,`email`) VALUES ('".$name."','".$email."') "); } fclose($source); 

有一个名为PHPExcel的库。 有了这个库,你可以轻松parsing任何Excel文件。 或者你可以导出你的文件为CSV,并会更容易为你。 PHP有原生函数来处理CSV文件。 您可以使用fgetcsv()str_getcsv()

转到这个链接并下载将读取excel文件并返回数组的PHP类。 这个数组将保存所有写在excel文件中的数据。

PHP的Excel的读者

免费…

你也可以在那里看到演示。

我已经在使用它了。 它绝对好。

任何其他的帮助,你可以自由地问我。

 <table> <form enctype="multipart/form-data" action="" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000" /> <tr> <td><h5><b>Select Standared</b></h5></td> <td><select name="chap_sel_std" id="chap_sel_std"> <option>Select Standared</option> <?php $exe_sel_std = mysql_query("SELECT * from s_standared"); while($r_sel_std = mysql_fetch_array($exe_sel_std)){ $sel_stdid = $r_sel_std['std_id']; $sel_std = $r_sel_std['std'];?> <option value="<?php echo $sel_stdid; ?>"><?php echo $sel_std;?></option> <?php } ?> </select></td> </tr> <tr> <td><h5><b>Select Font</b></h5></td> <td><select name="sel_f_gn_que"> <option>Select Font</option> <?php $xf = mysql_query("SELECT * from s_font"); while($rquef = mysql_fetch_array($xf)){ $f_id = $rquef['f_id']; $f_name = $rquef['f_name']; ?> <option value="<?php echo $f_id; ?>"><?php echo $f_name; }?> </option> </select></td> </tr> <tr> <td><h5><b>Upload Question<h5><b></td> <td> <input type="file" name="file" id="file" class="btn"> </td> </tr> <tr> <td></td> <td colspan="2"><input type="submit" class="btn btn-green big" name="add_que" value="Add Questions"></td> <td><input type="submit" name="saveandexit" class="" value="Finish" onclick="close();"></td> </tr> </form> </table> </div> <?php $data = array(); //$db =& DB::connect("mysql://root@localhost/names", array()); //if (PEAR::isError($db)) { die($db->getMessage()); } //quetype difficulty standard subject chap que marks function add_person($quetype,$dif, $subject,$chap_name,$que,$marks) { global $data, $db; //$sth = $db->prepare( "INSERT INTO names VALUES( 0, ?, ?, ?, ? )" ); // $db->execute( $sth, array( $first, $middle, $last, $email ) ); $data []= array( 'quetype' => $quetype, 'difficulty' => $dif, 'subject' => $subject, 'chap' => $chap_name, 'que' => $que, //'ans' => $ans, 'marks' => $marks ); } if(!isset($_FILES['file']['tmp_name'])){ echo ""; }elseif($_FILES['file']['tmp_name']) { $dom = DOMDocument::load( $_FILES['file']['tmp_name'] ); $rows = $dom->getElementsByTagName( 'Row' ); $first_row = true; foreach ($rows as $row) { if ( !$first_row ) { $quetype = ""; $dif = ""; $subject = ""; $chap_name = ""; $que = ""; //$ans = ""; $marks = ""; $index = 1; $cells = $row->getElementsByTagName( 'Cell' ); foreach( $cells as $cell ) { $ind = $cell->getAttribute( 'Index' ); if ( $ind != null ) $index = $ind; if ( $index == 1 ) $quetype = $cell->nodeValue; if ( $index == 2 ) $dif = $cell->nodeValue; if ( $index == 4 ) $subject = $cell->nodeValue; if ( $index == 6 ) $chap_name = $cell->nodeValue; if ( $index == 8) $que = $cell->nodeValue; //if ( $index == 9) $ans = $cell->nodeValue; if ( $index == 9) $marks = $cell->nodeValue; $index += 1; } add_person($quetype,$dif, $subject,$chap_name,$que,$marks); if(isset($_POST['add_que'])){ $chap_sel_std = $_POST['chap_sel_std']; echo $simquefnt = $_POST['sel_f_gn_que']; //que_id quetype_id chap_id sub_id std_id que dif_id marks que_cdate //$chap_sel_std = $_POST['chap_sel_std']; //que_id quetype_id chap_id sub_id std_id que dif_id marks que_cdate mysql_query("INSERT INTO s_question VALUES (null,'$quetype','$chap_name','$subject','$chap_sel_std','$que','NO IMAGE','$dif','$marks','$simquefnt','$current')"); // header("location:../admin/quetionaris.php#tabs-que"); echo "Successfully Added"; } } $first_row = false; } } ?>