【发布时间】:2020-07-09 09:38:32
【问题描述】:
我正在尝试在 cron.php 文件中使用此 mysql 语句从另一个数据库更新一个数据库。
我需要删除一列中的所有特殊字符以将其保存在我的第一个数据库中。我已经定义了一个函数,它负责删除所有这些函数,但是当我尝试在我的列数据中运行它时,它就无法按预期工作。
我正在使用以下代码:
//função para retirada de acentos
function tirarAcentos($string){
$acentos = 'ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿŔŕ ';
$sem_acentos = 'aaaaaaaceeeeiiiidnoooooouuuuybsaaaaaaaceeeeiiiidnoooooouuuyybyRr-';
$string = strtr($string, utf8_decode($acentos), $sem_acentos);
//$string = str_replace(" ","-",$string);
return utf8_decode($string);
}
// Executa o UPDATE de Cidades
$sql = "UPDATE imo_imo2019.categoria categoria
INNER JOIN imo_nido.i_cidade i_cidade
ON categoria.categoria_id = i_cidade.codcidade
SET categoria.categoria_title = i_cidade.descricao, categoria.categoria_url = tirarAcentos(i_cidade.descricao)";
代码运行良好。它按预期更新数据,但不删除字符。
如果你们中的一些人能帮我解决这个问题,我真的很高兴。
谢谢
【问题讨论】:
-
不,您不能从 SQL 查询中调用 php 函数。您需要将 php 代码重写为 MySQL 函数。
-
我在 PHP 页面中使用它。我应该改变它吗?
-
我看不到你在哪里调用 sql
标签: php mysql join mysqli sql-update