Mire, este es parte de mi código:
Código PHP:
require_once 'vacio.php';
$db = mysql_connect("localhost","root","mi_pass");
mysql_select_db("promosql") or die("No pudo seleccionarse la BD.");
$consulta = "SELECT * FROM Clientes";
$resultado = mysql_query($consulta) or die("La consulta falló: " . mysql_error());
// Impresion de resultados en HTML
echo "<table>";
while ($linea = mysql_fetch_array($resultado, MYSQL_ASSOC)) {
echo "<tr>";
foreach ($linea as $valor_col) {
echo "<td>$valor_col</td>";
}
echo "</tr>";
}
echo "</table>\n";
if (@$_POST['post'] == 'yes')
{
$query1 = "INSERT INTO Clasificados ('Id', 'Nombre', 'Correo', 'Telefono', 'Categoria', 'Anuncio') VALUES ('','".$_POST['Nombre']."','".$_POST['Email']."','".$_POST['Telefono']."','".$_POST['Categoria']."','".$_POST['Anuncio']."')";
$query2 = "INSERT INTO Clasificados (`Id`, `Nombre`, `Correo`, `Telefono`, `Categoria`, `Anuncio`) VALUES ('','".$_POST['Nombre']."','".$_POST['Email']."','".$_POST['Telefono']."','".$_POST['Categoria']."','".$_POST['Anuncio']."')";
$query3 = "INSERT INTO `clasificados` ( `Id` , `Nombre` , `Correo` , `Telefono` , `Categoria` , `Anuncio` ) VALUES ('prueba', 'de', 'una', 'conexion', 'a', 'la base de datos')";
echo $query1 . "<br>" . $query2 . "<BR><BR>";
mysql_query($query3,$db) or die("Invalid query 3");
mysql_query($query2,$db) or die("Invalid query 2");
mysql_query($query1,$db) or die("Invalid query 1");
echo $res;
}
?>
Ahora bien, lo que me dicen ya lo conocía y lo he aplicado, por ahi nunca he tenido problema, pues mezclo a mi gusto las comillas en mis sintaxis SQL que había usado para Access y nunca tuve el menor problema, pero si me extrañó MUCHO que tuve problema con el código que les pongo aquí arriba.
En sí me interesa que se fijen en las diferencias entre $query1 y $query2. El query2 tiene comillas invertidas y el query1 las tiene normales simples.
Bueno, pues así como están las cosas, el script imprimiría esto:
Invalid query 1
Lo que me indica que el query1 (el de las comillas simples), no está bien, pero el 2 si (y el 3 también)
Me sigo preguntando: ¿por qué solo me acepta comillas invertidas?