ホームページ > バックエンド開発 > PHPチュートリアル > mysqlデータベースのフィールドAのシンボルを置き換える方法

mysqlデータベースのフィールドAのシンボルを置き換える方法

WBOY
リリース: 2016-06-23 13:40:14
オリジナル
1185 人が閲覧しました

如何替换mysql数据库中  A字段中  \,.这样的英文标点符号


回复讨论(解决方案)

update table set A = replace(A,'\\,.','你要替换的值') where ...
ログイン後にコピー
ログイン後にコピー

where 后面的省略号是什么意思。
我之前

update table set A = replace(A,'\','') 
ログイン後にコピー
ログイン後にコピー

这样写的就替换不掉。

这样才行

update table set A = replace(A,'\\','')
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

要??
$sqlstr = "update b set url=replace(url,'\\\\,.','')";
mysql_query($sqlstr) or die(mysql_error());

update table set A = replace(A,'\\,.','你要替换的值') where ...
ログイン後にコピー
ログイン後にコピー



where 后面的省略号是什么意思。
我之前
update table set A = replace(A,'\','') 
ログイン後にコピー
ログイン後にコピー


这样写的就替换不掉。

这样才行

update table set A = replace(A,'\\','')
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー



按照你这样写的,替换不掉

要??
$sqlstr = "update b set url=replace(url,'\\\\,.','')";
mysql_query($sqlstr) or die(mysql_error());



按照你这样写的,替换不成功

贴出你的经 base64 编码的原始数据,至少也得贴个截图

都是根据你的描述做的解答,谁知到你描述的是否正确呢

贴出你的经 base64 编码的原始数据,至少也得贴个截图

都是根据你的描述做的解答,谁知到你描述的是否正确呢



好的。我的一个网站,用的飞飞cms做的视频网站。但是有的标题里面出现了\ , 等这样的英文字符,导致视频在程序解析的时候出现错误,播放不了,这个问题是我后期才发现的,所以之前很大一批数据都存在这个问题。如下图


所以我想通过替换数据库将这些多余的字符替换掉,以便于视频可以正常解析播放。

数据库表 ff_vod 播放地址这个内容字段是 vod_url


要??
$sqlstr = "update b set url=replace(url,'\\\\,.','')";
mysql_query($sqlstr) or die(mysql_error());



按照你这样写的,替换不成功



??我是上????的。



要??
$sqlstr = "update b set url=replace(url,'\\\\,.','')";
mysql_query($sqlstr) or die(mysql_error());



按照你这样写的,替换不成功



??我是上????的。



如果我的数据库表 ff_vod 字段名 vod_url 要替换\为空 按照你这个应该怎么修改编写啊。帮给写个完整的,谢谢。我怕我写的出了一点误差,谢谢

图中显示的只是 1 个 \ 字符,而你主贴中描述的是 \,.
目标错了,结果怎么能正确呢?

在 sql 控制器里

update table set A = replace(A,'\\','')
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
是正确的
在 php 里,因为要放在双引号中
$sql = "update table set A = replace(A,'\\\\','')";
ログイン後にコピー
ログイン後にコピー

才是正确的
4 个 \ 经 php 处理后变成 2 个 \ 传递给 mysql

$sqlstr = "update b set url=replace(url,'\\\\','')";mysql_query($sqlstr) or die(mysql_error());
ログイン後にコピー
ログイン後にコピー

图中显示的只是 1 个 \ 字符,而你主贴中描述的是 \,.
目标错了,结果怎么能正确呢?

在 sql 控制器里

update table set A = replace(A,'\\','')
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
是正确的
在 php 里,因为要放在双引号中
$sql = "update table set A = replace(A,'\\\\','')";
ログイン後にコピー
ログイン後にコピー

才是正确的
4 个 \ 经 php 处理后变成 2 个 \ 传递给 mysql



谢谢。原来在php中和sql中运行要多出来两个啊。谢谢你哈。解决了

$sqlstr = "update b set url=replace(url,'\\\\','')";mysql_query($sqlstr) or die(mysql_error());
ログイン後にコピー
ログイン後にコピー



好的。谢谢
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート