2016-10-29 1 views
0

Ich arbeite an einem Projekt, wo ich eine 25-stellige Nummer speichern muss. Als ich versuchte, BIGINT Datenformat zu verwenden, zeigt es außerhalb des Bereichs. Dann habe ich es unter Verwendung VARCHAR Datentyp gespeichert. Aber ich muss das auch in ein MS-EXCEL Blatt exportieren. Wenn ich es exportiere, zeigen Excel nur 13-14 höhere Stellen an, die restlichen unteren werden abgerundet, wodurch sie 0's werden.PHP und MYSQL: Konvertieren 25 Zeichen langen String zu Nummer

Mein Quellcode ist unten erwähnt:

<?php 
$conn = mysqli_connect("localhost", "root", "", "dis"); 

$output=''; 

$sql= "SELECT `polid`, `inscompanyid`, polno FROM `policies` order by polid desc"; 
$res = mysqli_query($conn, $sql) or die(mysqli_error($conn)); 
if(!$res || mysqli_num_rows($res)){ 
    $output .=' 
     <table class="table" border="1"> 
      <tr> 
       <th>asdf</th> 
       <th>qwer</th> 
       <th>zcxv</th> 
      </tr> 
    '; 
    while($row=mysqli_fetch_assoc($res)) 
    { 
     $output.=' 
      <tr> 
       <td>'.$row["polid"].'</td> 
       <td>'.$row["inscompanyid"].'</td> 
       <td>'.$row["polno"].'</td> 
      </tr> 
     '; 
    } 
    $output.='</table'; 
    //header("Content-Type: application/xls"); 
    //header("Content-Disposition: attachment; filename=download.xls"); 
    echo $output; 
} 

?> 
+1

Prepend Ihre große Zahl mit 'und Excel wird angezeigt als Text –

+0

@TimWilliams Ihre Pre-anhängige funktionierte perfekt – V15HM4Y

Antwort

0

Nach diesem Link http://answers.microsoft.com/en-us/msoffice/forum/msoffice_excel-mso_other/when-i-am-entering-16-digit-number-in-excel-its/7f50828d-77b4-4ad2-8ea7-0411d0236bd0

MS Excel nicht eine große Zahl mag. Es schlägt vor, dass, wenn Sie keine Mathematik auf die Zahlen machen müssen, die Sie den Typ der Zelle in Text ändern (ähnlich den Gründen, die Sie VARCHAR verwenden, um Ihre Nummer in mysql zu speichern).

Es ist möglich, eine Problemumgehung könnte sein, Ihre Datei als .csv auszugeben und herunterzuladen und in Excel mit Textformatierung für die Spalten zu öffnen.

Else, ich glaube, Sie sollten diese Formatierung in der Lage sein können, zu tun mit PHPExcel

+0

nicht einmal String richtig anzeigen. Es wendet seine Formatierung auf diese Zeichenfolge als Zahlen an. – V15HM4Y

+0

Wenn Sie Excel öffnen und dann die heruntergeladene Excel-Datei importieren und die Textformatierung für die Excel-Spalten verwenden, wird sie immer noch nicht korrekt angezeigt? (manchmal, wenn Sie die Datei direkt öffnen, wird automatisch eine Formatierung angewendet, die nicht korrigiert werden kann) –

+0

Importieren der Datei in Excel funktionierte nicht Kumpel ... – V15HM4Y