1

質問の言い方がよくわからなかったので、ウェブ上で何も見つけられなかったので、もう少し詳しく説明しようと思います。

したがって、3 つの入力ラジオ ボタンがあり、値は「サム」「トム」「ハリー」などの 3 つの名前に等しくなります。ユーザーが「Sam」を選択すると、その名前が PHP PDO を使用して指定された列に投稿されます。

私が変更したいのは、彼らが「Sam」を選択した場合、名前を投稿するだけでなく、別の列へのパスである img も投稿することです。現時点では 3 つの名前からしか選択できないため、この機能を追加する方法が if ステートメントで十分かどうかわかりませんでした。

名前 - nameImg

サム - images/avatar/sam.png

<?php
include 'users.php';

echo $_SESSION['id'];

$u = User::Create($_POST['username'],$_POST['password'],$_POST['email'],$_POST['avatar'],$_POST['name']);

if($u == 1){ header('location: /admin'); } 
else if ($u == 2){ echo "Name already taken"; } 
else { echo "There was an error with the sign up -- SEND BACK TO LOGIN WITH VALIDATION"; }
?>

明確にするために、サインアップ時にラジオボタンを介して選択したアバターの画像パスを投稿したいと思います。

更新された html -

        <div class="control-group">
      <label class="control-label"></label>
      <div class="controls">
        <label class="radio inline">
          <input class="startrbtn" name="name" value="sam" checked="checked" type="radio" style="margin-top:-3px;">
        </label>
        <label class="radio inline">
          <input class="startrbtn" name="name" value="tom" type="radio">
        </label>
        <label class="radio inline">
          <input class="startrbtn" name="name" value="harry" type="radio">
        </label>
      </div>
    </div>

方法

public function Create($name,$password,$email,$avatar)
    {
        $dbh = new PDO("mysql:host=HOST;dbname=DBNAME", "NAME", "PASSWORD");

        $stmt = $dbh->prepare('SELECT username FROM login WHERE username = :username LIMIT 1');
        $stmt->bindParam(':username', $name);
        $stmt->execute();
        $result = $stmt->fetch(PDO::FETCH_OBJ);

        if (!empty($result->username)){
            return 2;
        } else {
4

0 に答える 0