我有一张用瑞典语写有鱼名的桌子,看起来像这样:
FishID / SwedishName -生境
我给每条鱼都取了瑞典名字,但我也想要英文名字,我希望它看起来像这样:
FishID,SwedishName,EnglishName,EnglishName,生境
有没有办法将每条鱼的瑞典名字翻译成英文,并将其插入“EnglishName”栏?
发布于 2014-04-21 16:15:40
有没有办法将每条鱼的瑞典名字翻译成英文,并将其插入“EnglishName”栏?
除非您使用API,否则您需要将英文版插入到DB中,如果您已经准备好要插入一个列表或数组,那么它将是微不足道的,但是如果您不需要这样做,您可能不得不这样做,选择所有的行,然后创建一个基本的表单表,您可以在其中列出和放置英语等效的内容。
<?php
//connect
try {
$db = new PDO('mysql:host=127.0.0.1;dbname=fish_db', 'username', 'password');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$db->exec("SET CHARACTER SET utf8");
} catch(PDOException $e) {
echo 'Sorry there is a problem with the database connection :' . $e->getMessage();
}
//update if POST'ed form
if($_SERVER['REQUEST_METHOD'] == 'POST'){
foreach($_POST['EnglishName'] as $key => $value){
$stmt = $db->prepare('UPDATE fish_table
SET EnglishName = :EnglishName
WHERE FishID=:FishID');
$stmt->bindValue(':EnglishName', $value);
$stmt->bindValue(':FishID', $key);
$stmt->execute();
}
}
//select rows
try{
$stmt = $db->prepare('SELECT * FROM fish_table WHERE EnglishName = ""');
$stmt->execute();
$fishs = $stmt->fetchAll(PDO::FETCH_ASSOC);
}
catch(PDOException $e) {
echo 'Error: ' . $e->getMessage();
}
?>
<form method="post" action="">
<table>
<?php foreach($fishs as $fish):?>
<tr>
<td width="50%"><input type="text" name="swedish[<?php echo $fish['FishID']?>]" value="<?php echo $fish['SwedishName']?>"></td>
<td width="50%"><input type="text" name="english[<?php echo $fish['FishID']?>]" value=""></td>
</tr>
<?php endforeach;?>
</table>
<input type="submit" name="Submit" value="Submit" >
</form>或使用phpmyadmin ;p
https://stackoverflow.com/questions/23200701
复制相似问题