I need to compare complex strings in mysql-database by using php.
$my_value = '280T ripstop 100% Nylon, 72 g/m2, Lining, 210T taffeta 100% Polyester, 60 g/m2';
$stmt = $db->prepare('SELECT material_mapping.id, material_mapping.material_de, material_mapping.material_en FROM material_mapping_materialien LEFT JOIN material_mapping ON material_mapping_materialien.material_id = material_mapping.id WHERE material_mapping_materialien.material = :material');
$stmt->bindValue(':material',$my_value,PDO::PARAM_STR);
$stmt->execute();
if ($stmt->rowCount() > 0) {
$row = $stmt->fetch(PDO::FETCH_ASSOC);
[...]
After this code I get none results. I then output the resulting query by using debugDumpParams() and get:
SELECT material_mapping.id, material_mapping.material_de, material_mapping.material_en FROM material_mapping_materialien LEFT JOIN material_mapping ON material_mapping_materialien.material_id = material_mapping.id WHERE material_mapping_materialien.material = '280T ripstop 100% Nylon, 72 g/m2, Lining, 210T taffeta 100% Polyester, 60 g/m2'
I then used this query on my database and got 2 results. I think there must be some problems with the percents or any other character. I establish connection to database using following string:
mysql:host=localhost;dbname=mydbname;charset=utf8mb4
The database is innodb with collation utf8_general_ci
Does anyone has any hints for me?