2016-12-15 2 views
0

В настоящее время я работаю над автоматическим PDF-форматом. Все уже работает, но проблема в том, что когда я пытаюсь пересказать цену или назвать Umlauts, например, ä, ö, ü, ß и т. Д., Не будет отображаться. Даже знак € не показывает. Я пытаюсь использовать GET из опубликованного URL-адреса. Мне нужна помощь.PHP - GET umlauts из параметра связи

Get-Параметры:

$name = $_GET['name']; 
    $geb = $_GET['geb']; 
    $strasse = $_GET['strasse']; 
    $plz = $_GET['plz']; 
    $beruf = $_GET[urlencode(beruf)]; 
    $tel = $_GET['tel']; 
    $mail = $_GET['mail']; 
    $ek = $_GET['ek']; 
    $vorbesitzer = $_GET['vorbesitzer']; 
    $vkpreis = $_GET['vkpreis']; 
    $sonstige = $_GET['sonsitge']; 
$marke = $_GET[urlencode('marke')]; 
    $modell = $_GET['modell']; 
    $motor = $_GET['motor']; 
    $km = $_GET['km']; 
    $fin = $_GET['fin']; 
    $ez = $_GET['ez']; 

Для тестирования у меня есть только два Params в моей URL:

erstellen?eknr=88&marke=Skoda&beruf=Medienfachmannäöü€$ 

Когда я использую UrlEncode это выглядит следующим образом:

erstellen?eknr=88&marke=Skoda&beruf=Medienfachmannäöü€$ 

Как создать свой url:

<script type="text/javascript"> 
    window.location = "erstellen?<?php $conn = new mysqli($servername, $username, $password, $dbname); 
$sql = "SELECT * FROM `Fahrzeugverkauf` WHERE EKNR = $ek"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 

    while($row = $result->fetch_assoc()) { 
$query_string = 'eknr=' . rawurlencode ($row[EKNR]) . '&marke=' . rawurlencode ($row[Marke]). '&beruf=' . rawurlencode ($beruf); 
     echo htmlentities($query_string) ; 
    } 
} ?>" 

Мой вывод выглядит так:

$pdf->useTemplate($tplIdx, 0, 0, 210); 
    $pdf->SetFont('Times','B', 10); 
     $pdf->SetXY(158, 4.2); 
    $pdf->Write(4, '13-12-2016'); 
     $pdf->SetXY(36.2, 24.6); 
    $pdf->Write(4, $name); 
     $pdf->SetXY(162.6, 24.7); 
    $pdf->Write(4,$geb); 
      $pdf->SetXY(35.3, 31.3); 
    $pdf->Write(4,$strasse); 
       $pdf->SetXY(85, 31.3); 
    $pdf->Write(4,$plz); 
      $pdf->SetXY(31.2, 37.6); 
    $pdf->Write(4,urldecode($beruf)); 
       $pdf->SetXY(155, 37.6); 
    $pdf->Write(4,'?????üüßßßßüüü€??'); 
        $pdf->SetXY(54, 59.5); 
    $pdf->Write (4, urldecode($marke)); 
         $pdf->SetXY(102, 59.5); 

    $pdf->Write(4,$modell); 
         $pdf->SetXY(40, 66.2); 
    $pdf->Write(4,$ez); 
         $pdf->SetXY(78, 66.2); 
    $pdf->Write(4,$motor); 
          $pdf->SetXY(122.8, 66.2); 
    $pdf->Write(4,$fin); 
          $pdf->SetXY(70, 79.2); 
    $pdf->Write(4,$km); 
          $pdf->SetXY(38, 85.3); 
    $pdf->Write(4,$vorbesitzer); 
     $pdf->SetXY(52, 92); 
    $pdf->Write(4,$vkpreis); 
    $pdf->Image('checkbox.jpg', 63.8, 130,5,5); 
    $pdf->Image('check-box.png', 63.8, 160,5,5); 
    $pdf->Image('checkbox.jpg', 63.8, 192.5,5,5); 
    $pdf->Image('check-box.png', 63.8, 227.6,5,5); 

Так что проблема я столкнулся в том, что я не могу использовать мета-параметров со времени им с помощью FPDF. Кто-нибудь может помочь?

+0

Как вы создаете 'url'? Можете ли вы предоставить код? 'urlencode' должен работать. Может быть, здесь что-то не так. –

+0

Обновлено, я держу его очень просто –

ответ

0

Возможно, вам необходимо установить правильную кодировку UTF-8 как в исходном файле, так и в FPDF. Вам также необходимо установить кодировку файла в UTF-8, если этого не произошло.

Вы можете использовать ISO-8859-1 (лат. 1), но я бы не рекомендовал этого.

+0

FPDF не поддерживает UTF-8. Но я установил его на правильную кодировку, если я просто поместил умлауты без чего-либо, кроме параметра write, он выводит его правильно. Но когда я получу его из URL-адреса, он выглядит так: Medienfachmannäüüâ,¬ –

+0

Действительно? Черт, как это возможно? Тогда вы должны пойти с utf8_encode/utf8_decode ... не самым лучшим, но должны работать как ожидалось. – sebastian

+0

Посмотрите здесь: http://stackoverflow.com/questions/3514076/special-characters-in-fpdf-with-php – sebastian

Смежные вопросы