Skip to content

Instantly share code, notes, and snippets.

@umairidrees
Last active September 16, 2021 08:14
Show Gist options
  • Save umairidrees/8952054 to your computer and use it in GitHub Desktop.
Save umairidrees/8952054 to your computer and use it in GitHub Desktop.
<?php
$username="root"; $password=""; $database="exam_codes";
$con = mysql_connect("localhost",$username,$password) or die( "Unable to Connect database");
mysql_select_db($database,$con) or die( "Unable to select database");
// Table Name that you want
// to export in csv
$ShowTable = "blogs";
$FileName = "_export.csv";
$file = fopen($FileName,"w");
$sql = mysql_query("SELECT * FROM `$ShowTable` LIMIT 11");
$row = mysql_fetch_assoc($sql);
// Save headings alon
$HeadingsArray=array();
foreach($row as $name => $value){
$HeadingsArray[]=$name;
}
fputcsv($file,$HeadingsArray);
// Save all records without headings
while($row = mysql_fetch_assoc($sql)){
$valuesArray=array();
foreach($row as $name => $value){
$valuesArray[]=$value;
}
fputcsv($file,$valuesArray);
}
fclose($file);
header("Location: $FileName");
echo "Complete Record saves as CSV in file: <b style=\"color:red;\">$FileName</b>";
?>
@sirsotisix
Copy link

Hello! I hope it's not too late to ask for help.

I am able to display the headers, but I am unable to display the remaining rows

I do the same sql query to show the results in a table within the web, but when I use it to generate the csv it doesn't show anything

Can you give me a hand please?

` if(isset($_POST["exportarCSV"])) {
$ShowTable = "****";

        $FileName = "_export.csv";
        $file = fopen($FileName,"w");
        
        $sql = mysqli_query($con,"SELECT * FROM **** WHERE RECINTO = '$RECINTO' AND FECHA BETWEEN '$DESDE' AND '$HASTA' ORDER BY FECHA,INICIO, RECINTO ASC");
        $row = mysqli_fetch_assoc($sql);
        // Save headings alon
        	$HeadingsArray=array();
        	foreach($row as $name => $value){
        		$HeadingsArray[]=$name;
        	}
        	fputcsv($file,$HeadingsArray,";");
        	
        // Save all records without headings
        
        	while($row = mysqli_fetch_assoc($sql)){
        	$valuesArray=array();
        		foreach($row as $name2 => $value){
        		$valuesArray[]=$name2;
        		}
        	fputcsv($file,$valuesArray); 
        	}
        	fclose($file);
        
        header("Location: $FileName");
        
        echo "Complete Record saves as CSV in file: <b style=\"color:red;\">$FileName</b>";

}`

@blinoale
Copy link

Hi,
This script works well, but in csv file there is no first line of the table. List is starting from line 2. What may be the problem?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment