Kshitij Pandey Kshitij Pandey - 1 year ago 95
PHP Question

Illegal mix of collations (ascii_general_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE)


include 'db_connect.php';

$name = $_REQUEST['sname'];
$email = $_REQUEST['email'];

$query = "SELECT * FROM info_enrol_student WHERE ES_name = '$name' AND ES_EMAIL = '$email'";
$in = mysqli_query($conn,$query) or die(mysqli_error($conn));
$count = mysqli_num_rows($in);
if (mysqli_num_rows($in) > 0)


I am making a login form and giving data to this php code but getting this error.

Illegal mix of collations (ascii_general_ci,IMPLICIT) and
(latin1_swedish_ci,COERCIBLE) for operation '=' in php

I am not able to understand the error because earlier with the same script I was able to login in the system.

Answer Source

Based on the error stated by you you need to do following:-

Go to the database table and change the collation of these two fields (ES_name and ES_EMAIL) to utf-8-bin and change your query like below:-

$query = "SELECT * FROM info_enrol_student WHERE `ES_name` = $name AND `ES_EMAIL` = $email"; `
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download