J'utilise JQuery et CakePHP pour mon application. J'ai une table Attributes(id,form_id,label,type)
Requête à utiliser dans les conditions, lorsque l'espace entre la valeur
Dans ce tableau, j'ai une entrée comme
1 1 First name Text
2 1 Lastname Text
J'ai écrit une requête CakePHP pour récupérer le id
donné la form_id
et la label
$attri = $this->Attribute->find('all', array(
'fields'=> array('Attribute.id'),
'conditions' => array(
'Attribute.form_id' => $id,
'Attribute.label' => $key
)
));
où $key
est mon label
et $id
est mon form_id
. Cependant, puisque le prénom inclut l'espace entre les deux, les conditions ne fonctionnaient pas bien, mais cela fonctionne pour Lastname car il n'y avait pas d'espace entre les deux. Comment puis-je résoudre ce problème?
Éditer:
J'utilise la base de données MySQL. L'utilisateur peut conserver n'importe quel nom de champ. J'ai obtenu les paramètres clés de $ d'un formulaire en utilisant $ _POST, par exemple:
foreach ($_POST as $key => $value):
echo $key; //displays First name correctly.
Mais quand j'utilise $ clé dans les conditions, que si aucun espace sont entre l'étiquette qu'il accepte, retourne l'attribut id, sinon rien n'est retourné.
J'ai même essayé d'utiliser "$ key", mais ça ne marche pas non plus.
Pourquoi votre colonne contient-elle un espace? quelle base de données utilisez-vous? je suggère de mettre un trait de soulignement entre first_name ou en le changeant en prénom – jimiyash
Je ne vois pas pourquoi un espace dans les conditions ne fonctionnerait pas .. D'où obtenez-vous vos paramètres? Sont-ils encodés? –
J'utilise la base de données MYSQl. L'utilisateur peut conserver n'importe quel nom de champ. Les paramètres clé $ i got it former un formulaire en utilisant _POST $ par exemple foreach ($ _POST as $ key => $ value): echo $ key; // affiche d'abord le nom correctement. Mais si j'ai utilisé $ key dans les conditions seulement si aucun espace entre l'étiquette qu'il accepte et retourner l'attribut id.Else rien n'est retourné .. – useranon