Jump to content

Erro na conversao de base de dados sql


Umbus

Recommended Posts

Boas, estou a fazer um programa para eleminar o smile :\ da sql que esta a dar problemas de sintaxe na mesma. O codigo é o seguinte:

<?

// CONEXAO - BANCO DE DADOS MYSQL;
$ligar = mysql_connect($host, $user, $pass)  or die ("<br><br><center>Problemas ao conectar ao servidor: " . mysql_error() . "</center>");

// SELECIONA - BANCO DE DADOS MYSQL;
mysql_select_db($db, $ligar) or die ("<br><br><center>Problemas ao seleccionar a base de dados: " . mysql_error() . "</center>");

    $tabela="jos_fb_messages_text";
    $campos = array("message");
    
    //Caracteres a procurar
    $lat = array(":\"");

    //Caracteres a substituir pelos de procura
    $utf = array(" ");

    
$res = mysql_query("SELECT * FROM `".$tabela."`");
if(mysql_num_rows($res)>0) {
	while($linha=mysql_fetch_array($res)) {
		$id=$linha['mesid'];
		$sql="UPDATE `".$tabela."` SET ";
		for($x=0; $x<count($campos); $x++) {
            str_replace($lat, $utf, $campos[$x]);
		}
		$sql.=" WHERE `mesid`=\"".$id."\"";
		if($res_up=mysql_query($sql)) $sql="";
		else die("ERRO NA QUERY ".$sql. "<br>ERRO SQL: ".mysql_error());


	}
}

?>

O problema e que acontece o seguinte erro:

ERRO NA QUERYUPDATE `jos_fb_messages_text` SET WHERE `mesid`="2"

ERRO SQL: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `mesid`="2"' at line 1

Podem ajudar a resolver o problema?

Eu sou eu e eu sou aquele que sou eu...

Link to comment
Share on other sites

Tenta assim.

<?php

// CONEXAO - BANCO DE DADOS MYSQL;
        $ligar = mysql_connect($host, $user, $pass)  or die ("<br><br><center>Problemas ao conectar ao servidor: " . mysql_error() . "</center>");

// SELECIONA - BANCO DE DADOS MYSQL;
        mysql_select_db($db, $ligar) or die ("<br><br><center>Problemas ao seleccionar a base de dados: " . mysql_error() . "</center>");

    $tabela="jos_fb_messages_text";
    $campos = array("message");
   
    //Caracteres a procurar
    $lat = array(":\"");

    //Caracteres a substituir pelos de procura
    $utf = array(" ");

   
$res = mysql_query("SELECT * FROM `".$tabela."`");
if(mysql_num_rows($res)>0) {
                while($linha=mysql_fetch_array($res)) {
                        $id=$linha['mesid'];
                        $sql="UPDATE `".$tabela."` SET ";
                        $sql.="`message`=\"".str_replace($lat, $utf, $linha['message'])."\"";
                        $sql.=" WHERE `mesid`=\"".$id."\"";
                        if($res_up=mysql_query($sql)) $sql="";
                        else die("ERRO NA QUERY ".$sql. "<br>ERRO SQL: ".mysql_error());


                }
}

?>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Tenta antes assim.

<?php

// CONEXAO - BANCO DE DADOS MYSQL;
        $ligar = mysql_connect($host, $user, $pass)  or die ("<br><br><center>Problemas ao conectar ao servidor: " . mysql_error() . "</center>");

// SELECIONA - BANCO DE DADOS MYSQL;
        mysql_select_db($db, $ligar) or die ("<br><br><center>Problemas ao seleccionar a base de dados: " . mysql_error() . "</center>");

    $tabela="jos_fb_messages_text";
    $campos = array("message");
   
    //Caracteres a procurar
    $lat = array(":\"");

    //Caracteres a substituir pelos de procura
    $utf = array(" ");

   
$res = mysql_query("SELECT * FROM `".$tabela."`");
if(mysql_num_rows($res)>0) {
                while($linha=mysql_fetch_array($res)) {
                        $id=$linha['mesid'];
                        $sql="UPDATE `".$tabela."` SET ";
                        $sql.="`message`=\"".mysql_real_escape_string(str_replace($lat, $utf, $linha['message']))."\"";
                        $sql.=" WHERE `mesid`=\"".$id."\"";
                        if($res_up=mysql_query($sql)) $sql="";
                        else die("ERRO NA QUERY ".$sql. "<br>ERRO SQL: ".mysql_error());


                }
}

?>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.