Кодировка

SergoVL

Новичок
Доброе время суток уважаемые!

Просьба оказать помощь в решении вопроса.

БД MSSQL, Oracle SQL Developer

Есть форма для заполнения. При заполнении которой отправляем в БД. Изначально в БД кириллица отображалась не корректно, поэтому поменял кодировку на cp1251. После стало нормально записывать, но теперь не могу понять, как при выводе на страницу был UTF-8. Доступа к БД нет.

Еще вопрос - как можно данный "код" сократить?

Спасибо заранее.
PHP:
$name = htmlspecialchars($_POST['first_info']);
$name2 = iconv('UTF-8','CP1251',$name);

$name3 = htmlspecialchars($_POST['order number']);
$name4 = iconv('UTF-8','CP1251',$name3);

$name5 = htmlspecialchars($_POST['Number']);
$name6 = iconv('UTF-8','CP1251',$name5);

$name7 = htmlspecialchars($_POST['RCN']);
$name8 = iconv('UTF-8','CP1251',$name7);

require_once('C:/inetpub/auth/conn.php');
$sql2 = "INSERT INTO db_opr.dbo.hwc([USER],[Date],[Number],[RCN])VALUES('$name2','$name4','$name6','$name8')";

$sql = "SELECT*FROM db_opr.dbo.hwc";

$result = odbc_exec($conn, $sql2)or die("Couldn't execute query!");
$result2 = odbc_exec($conn, $sql)or die("Couldn't execute query!");
while ($row = odbc_fetch_array($result2)) {
    $User = $row['USER']."<br>";
    $Date = $row['DATE']."<br>";
    $Number = $row['NUMBER']."<br>";
    $RNC = $row['RCN']."<br>";
    $Fingerprint = $row['FINGERPRINT']."<br>";
    $Capacity_hwc_add = $row['CAPACITY_HWC_ADD']."<br>";
    $User_capacity_add = $row['USER_CAPACITY_ADD']."<br>";
    $Capacity_hwc_total = $row['CAPACITY_HWC_TOTAL']."<br>";
    $User_capacity_total= $row['USER_CAPACITY_TOTAL']."<br>";
    $Address = $row['ADDRESS']."<br>";
    $Pio_u = $row['PIO']."<br>";
    $Number_c = $row['NUMBER_C']."<br>";
    $File_lic= $row['FILE_LIC']."<br>";
    $Data_rem = $row['DATA_REM']."<br>";
    $Number_rem = $row['NUMBER_REM']."<br>";
    $Komm = $row['KOMM']."<br>";
    $Ok_not_ok = $row['OK_NOT_OK']."<br>";
 
    $r1 = iconv('CP1251','UTF-8',$User);
    $r2 = iconv('CP1251','UTF-8',$Date);
    $r3 = iconv('CP1251','UTF-8',$Number);
    $r4 = iconv('CP1251','UTF-8',$RCN);
    $r5 = iconv('CP1251','UTF-8',$FINGERPRINT);
    $r6 = iconv('CP1251','UTF-8',$CAPACITY_HWC_ADD);
    $r7 = iconv('CP1251','UTF-8',$USER_CAPACITY_ADD);
    $r8 = iconv('CP1251','UTF-8',$CAPACITY_HWC_TOTAL);
    $r9 = iconv('CP1251','UTF-8',$USER_CAPACITY_TOTAL);
    $r10 = iconv('CP1251','UTF-8',$ADDRESS);
    $r11 = iconv('CP1251','UTF-8',$PIO_U);
    $r12 = iconv('CP1251','UTF-8',$NUMBER_C);
    $r13 = iconv('CP1251','UTF-8',$FILE_LIC);
    $r14 = iconv('CP1251','UTF-8',$DATA_REM);
    $r15 = iconv('CP1251','UTF-8',$NUMBER_REM);
    $r16 = iconv('CP1251','UTF-8',$KOMM);
    $r17 = iconv('CP1251','UTF-8',$OK_NOT_OK);
 
    echo '<table style="BGCOLOR:#c0c0c0; border:1px;">
   <tr>
   <td style="width:250px; padding-left:25px;">'.$r1.'</td>
   <td style="width:250px; padding-left:25px;">'.$r2.'</td>
   <td style="width:250px; padding-left:25px;">'.$r3.'</td>
   <td style="width:250px; padding-left:25px;">'.$r4.'</td>
   <td style="width:250px; padding-left:25px;">'.$r5.'</td>
   <td style="width:250px; padding-left:25px;">'.$r6.'</td>
   <td style="width:250px; padding-left:25px;">'.$r7.'</td>
   <td style="width:250px; padding-left:25px;">'.$r8.'</td>
   </tr>
   </table>';
 
}

odbc_result_all($result2, "BGCOLOR='#c0c0c0' border='1' ");
odbc_free_result($result2);

odbc_close($conn);
 
Последнее редактирование:

weregod

unserializer
в бд таблице или всем её полям заменить кодировку на UTF-8 и выкинуть конвертацию из кода
 

AnrDaemon

Продвинутый новичок
Вдогонку - научиться уже использовать подготовленные выражения.
 
Сверху