Autor Zpráva
luma64
Profil
Zdravim, mam aplikaciu, ktora ked bezi na webe. Obsahuje roletu s menami avsak nepriradi kod z ciselnika. Tabulka aj pole su utf8 / utf8_slovak_ci. Po vybere sa dotahuje dalsim selektom podla vybraneho mena jeho osobny kod. Najlepsie by bolo urobit to naraz, ale naviem ako.

Ak ma clovek v rolete pismena ako ť a č - kod sa nedotiahne. Spusteny vygenerovany selekt vsak z tabulky dotiahne pozadovany kod. Ked si spomenutu databazu nahram na moj lokal, tam sa tento problem nevyskytuje. Subor s php kodom je prekonvertovany do utf. Takisto mam zabezpecene nastavenie na kodovanie utf prikazom mysql_query("SET CHARACTER SET utf8");
Priklad:
<!-- Drop down -- Clovek--> 
<?php
    $cpquery1 = "Select id,priezvisko,tit1,tit2,osobnykod from zoznam where kodpzs='$kodpzs' and platny='A' order by priezvisko";
    $cpresult1 = mysql_query($cpquery1) or die(mysql_error());
    ?>
    <table>
    <tr>
    <td>
    <p>Clovek:
    <select name="clovek" value="clovek">
        <?php
        while($row = mysql_fetch_array($cpresult1)){
        echo '<option value="' .$row['priezvisko']. '">'. $row['priezvisko']. '</option>'  ;
        }
        ?>
        <option value="clovek"></option>
        </select>
     <!-- Koniec drop down clovek-->
    </td>

    </tr>
.
.

// Udaje o clovekovi
$priezvisko=$_POST['clovek']; //priezvisko cloveka
$cpquery = "Select tit1,tit2,osobnykod from  zoznam where priezvisko='$priezvisko' and kodpzs='$kodpzs' ";
echo $cpquery;
$result = mysql_query($cpquery) or die(mysql_error());
if ($result)
{
while($row = mysql_fetch_array( $result ))
{
//echo "Kód človeka: ".$row['osobnykod']; 
$osobnykod=$row['osobnykod'];
$tit1=$row['tit1'];
$tit2=$row['tit2'];
$zapis='ANO';
//exit();
}
}
Joker
Profil
luma64:
Kódování by měl vyřešit jeden dotaz SET NAMES na začátku, ten nastaví vše potřebné.

Nicméně na tomhle je špatně už návrh, když tam budou dva lidi se stejným příjmením, nebude to fungovat.
luma64
Profil
Joker:
Dakujem, uz je vsetko ako ma byt.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: