Soy nuevo aqui. Comencé PHP recientemente y me pregunto cómo podría insertar variables y ponerlas entre comillas simples, en una cadena de comillas dobles. Esto es lo que probé: $query = "INSERT INTO Table (Name, Activity) VALUES ('$name', '$activity');"; Pero cuando verifico $query , contiene eso: INSERT INTO Table (Name, Activity) VALUES (,); . No entiendo por qué hace eso porque cuando, en lugar de escribir el código anterior, escribo este: $query = "INSERT INTO Table (Name, Activity) VALUES ($name, $activity);"; (sin las comillas simples), la cadena contiene esto: INSERT INTO Table (Name, Activity) VALUES (Robert, Book-seller); . ¿Alguien tiene una pista?
cómo podría insertar variables y ponerlas entre comillas simples, en una cadena de comillas dobles.
No hagas eso. Te deja vulnerable a los ataques de inyección SQL . En su lugar, use declaraciones preparadas con parámetros enlazados como se describe en esta publicación .
Intenté tu declaración:
$query = "INSERT INTO Table (Name, Activity) VALUES ('$name', '$activity');";Y funcionó perfectamente conmigo. Supongo que debe verificar los valores que pasa en $ nombre y $ actividad. (para Robert, Book-Seller está funcionando muy bien).
Todavía puedes probar esto. Podría ayudar:
$query = "INSERT INTO Table (Name, Activity) VALUES (\"$name\", \"$activity\");";Y una nota de precaución: como dice Alex Howansky, no hagas eso. te deja vulnerable a los ataques de inyección SQL.
Espero eso ayude. ¡Mis mejores deseos!