user_tableにpasswordという列があります。 これで、パスワードフィールドの既存の値を渡して、すべての行のすべてのパスワードフィールドを更新し、関数の戻り値を使用して更新します。それを達成する方法?同じ列の既存の値を持つ関数呼び出しに基づいてテーブルのすべての行の列を更新する方法
╔════╦══════════════╦══════╗
║ id ║ username ║ pwd ║
╠════╬══════════════╬══════╣
║ 1 ║ Jeff Atwood ║ 5636 ║
║ 2 ║ Geoff Dalgas ║ 148 ║
║ 3 ║ Jarrod Dixon ║ 101 ║
║ 4 ║ Joel Spolsky ║ 959 ║
╚════╩══════════════╩══════╝
私の機能は次のとおりです。
function encryptPassword(password)
{
// $new password = my encryption logic here
return $password;
}
は、どのように私は1つですべての行1内のすべてのパスワードcloumnを更新することができますか?
ループと単純な更新クエリを使用して達成することができます –
@AhmedGinani私はそれを知っていますが、私は関数を呼び出してそれを更新し、MySQLの更新クエリで戻り値を取る方法はありますか? –
は1つのクエリではありません。 PHP配列のすべての行を選択し、ループスルーし、パスワードに対してencryptPassword関数を実行し、その行を更新します。 PHP固有の機能が必要な場合は、これを行う他の方法はありません。 MySQLにはフィールドを暗号化するための組み込み関数がいくつか用意されていますが、これは必要に応じてPHPの必要性を排除します。 https://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html – ADyson