sql >> Database teknologi >  >> RDS >> Mysql

Brug af Apostrof i MySQL ENUM-værdi, der vil udfylde HTML-kombiboks til databasesøgning

Del 1 kan være ret let:'a''b' er et alternativ til 'a\'b' og betyder altså det samme. UI er sikker på, at i forespørgsler vil den korrekte streng blive returneret i modsætning til tabeldefinitionen.

Til del 2 har Nedret Recep givet dig det rigtige svar. Desuden undrer jeg mig over hvordan

echo "<option value='".$imgClass_row[imgClass]."'>"

nogensinde kunne resultere i

<option value="Robin" s'="">

. Jeg ville hellere forvente

<option value='Robin's'="">

hvilket tydeligvis er forkert, men kan løses med htmlspecialchars() .

EDIT:Jeg har fundet en mulig forklaring:HTML-parseren af ​​browseren kan være skyld her. Med

<select id="s" onchange="alert(document.getElementById('s').innerHTML + ' value:' + document.getElementById('s').value)">
        <option value='Robin&apos;s'>a</option>
        <option value='Robin's'>b</option>
</select>

Jeg bruger Firefox

<option value="Robin's">a</option>
<option value="Robin" s="">b</option>
value:Robin's

med mulighed a og

<option value="Robin's">a</option>
<option value="Robin" s="">b</option>
value:Robin

med mulighed b . Men det er efter parsing og genmontering og er tydeligvis ikke den PHP-genererede kode. Og selv da, hvor er en axcess ' i <option value="Robin" s'=""> .



  1. Hvordan sletter man duplikerede poster?

  2. Hvad er det største ID-nummer, som autoincrement kan producere i mysql

  3. flet alle rækkers kolonner til en enkelt kolonne fra den sammenføjede tabel

  4. postgresql single instace installationer