0

Knowledgedetail に EmployeeID と KnowledgeID を挿入したいと考えています。彼は従業員を作成しますが、Knowledgedetail では何もしません。今はコードがありません。たくさんのことを試しましたが、わかりません。
最初に Addprofile.php でプロファイルを作成し、少なくとも知識を選択します。私の質問は、プロファイルを作成し、ナレッジ詳細で ID を取得する方法を選択するかどうかです。

表 1
従業員
: EmployeeID、名前、事業所、電子メール、電話番号、写真、説明
表 2
Knowledge
: KnowledgeID、Knowledge
表 3
Knowledgedetail
: KnowledgedetailID、EmployeeID KnowledgeID

EmployeeID out 従業員は EmployeeID out Knowledgedetail および
KnowledgeID out と関係があります Knowledge は KnowledgeID out Knowledgedetail と関係があります

Addprofile.php

<?php
include("connection.php");
?>
<!DOCTYPE html>
<html>
<head>
    <title>Information System</title> 
    <link rel="stylesheet" type="text/css" href="css/test.css">
    <meta charset ="utf-8">
    <link rel='stylesheet' href='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/smoothness/jquery-ui.css' type='text/css' media='screen' />  
    <link rel='stylesheet' href='css/ui.multiselect.css' type='text/css' media='screen' />
    <script src="../Informatiesysteem/js/jquery.min.js"></script>
    <script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'></script>
    <script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js'></script>
    <script type='text/javascript' src='../Informatiesysteem/js/ui.multiselect.js'></script>
    <script type='text/javascript'>
            jQuery(document).ready(function() {
                jQuery("#selectitems").multiselect();
            });
    </script>
</head>

<body>
    <div id="container">
        <div id="logo"></div>
            <div id="header">
            <h1>Add Profile</h1>
            </div>
                    <div id="menu">
                    </div>
                        <div id="content">
                <?php
                $result = mysql_query("select knowledgeid, knowledge from knowledge");
                $items = array(); 
                $selected = array();
                while ($row = mysql_fetch_array($result)){  
                $id [] = $row [ 'knowlegdeid' ];
                $items[] = $row[ 'knowledge' ];  
                }
                //form processing
                if (isset($_POST['selectitems'])) {
                $selected = $_POST['selectitems'];
                }       
                if (!empty($selected)) : print_r($selected); endif;
                ?>
                <form enctype="multipart/form-data" id="my form" method="post" action="Addedprofile.php">
                Name:            <input type="text" name="name" /></br>
                Establishment:   <input type="text" name="establishment"/></br>
                E-Mail:          <input type="email" name="email"/></br>            
                Phonenumber:     <input type="tel" name="phonenumber"/></br>    
                Photo:           <input type="file" name="photo"/></br>
                Description:     <textarea rows="4" cols="50" name="description"></textarea></br>
                Knowledge: <select name="selectitems[]" id="selectitems" multiple="multiple" style="width: 450px; height: 180px;">
                <?php //first we add the list of selected items if any
                foreach ($selected as $sel) { ?>
                <option value="<?php echo $sel; ?>" selected="selected"><?php echo $id[$sel]; $items[$sel];?></option>
                <?php } ?>
                <?php foreach ($items as $i => $v) { //then insert all items, skipping those who were added above
                if (in_array($d, $i, $selected)) : continue; endif; //skip ?>
                <option value="<?php echo $d, $i; ?>"><?php echo $v; ?></option>
                <?php } ?>
                </select>                                    
                </br></br></br></br>
                <input type="submit" name="add_profile" value="Add profile" />                       
                </form>
                </div>
</body>
</html> 

追加されたprofile.php

<!DOCTYPE html>
<html>
<meta http-equiv="refresh" content=";URL=Addprofile.php" />
</html>
<?php
include ("connection.php");
$Name = $_POST['name'];
$Establishment = $_POST['establishment'];
$Email = $_POST['email'];
$Phonenumber = $_POST['phonenumber'];
$Photo = $_POST['photo'];
$Description = $_POST['description'];


$sql = "INSERT INTO employees  
        (
         name, 
         establishment,
         email,
         phonenumber,
         photo,
         description
         )
         VALUES ('". $Name ."', '". $Establishment ."', '". $Email ."', '". $Phonenumber ."', '". $Photo ."', '". $Description ."')";

$sqldetail = "INSERT INTO knowledgedetail 
        (
        employeeid,
        knowledgeid     
        )
        VALUES ......................."; 

                $add = mysql_query($sql);           



            if ($add === false){
                   echo 'Profile is not created';
             }
            else {               
                 echo "Profile created";
                 }

            echo '</br>';



$knowledge = mysql_query($sqldetail);                                       

        if ($add === false){
               echo 'Knowledge is not added';
         }
        else {               
             echo "Knowledge added";
             }

            echo '</br>';


?>
4

1 に答える 1

0

コードに問題があるのは次のとおりです。

$knowledge = mysql_query($sqldetail);                                       

if ($add === false){
    echo 'Knowledge is not added';
}
else {               
    echo "Knowledge added";
}

ifステートメントでは、 を比較し、 を比較する必要があり$knowledgeます$add。したがって、次のようになります。

$knowledge = mysql_query($sqldetail);                                       

if ($knowledge === false){
    echo 'Knowledge is not added';
}
else {               
    echo "Knowledge added";
}

また、失敗するmysql_error()たびに呼び出しを追加します。mysql_query()

echo "MySQL ERROR: SQL = $sql -- Error=".mysql_error()";
于 2013-04-25T17:10:34.320 に答える