3

管理パネルを作成し、データベースからテーブルにデータを取得してから、それを変更できるようにしようとしています。

HTMLコードで作成されたsearchFormと呼ばれる2つのフォームがあり、フォームは送信後に正常に機能します。

もう 1 つのフォーム (loadForm) は、SQL DB からデータを取得する php コードで動的に作成されます。PHP は正常に動作し、すべてのフィールドを含むテーブルを取得します。問題は、特定の行を送信すると、post メソッドで値を取得できないことです。var_dump を確認したところ、結果は 0 でした。また、テーブルの css 属性を変更できません。

助けてください....

    <?php

    include("config.inc.php");
    $lfname='';
    $llname='';
    $lphone='';
    $lemail='';
    $lcity='';
    $lphotos='';
    $fname='';
    $lname='';
    $phone='';
    $email='';

    if(isset($_POST['searchbtn'])){
        if (isset($_POST['fname'])) {
            $fname=$_POST['fname'];
        }

        if (isset($_POST['lname'])) {
            $lname=$_POST['lname'];
        }

        if (isset($_POST['phone'])) {
            $phone=$_POST['phone'];
        }

        if (isset($_POST['email'])) {
            $email=$_POST['email'];
        }
        var_dump($phone);
    }

    if (isset($_POST['savebtn'])){

        if (isset($_POST['lfname'])) {
            $lfname=$_POST['lfname'];
        }
        if (isset($_POST['llname'])) {
            $llname=$_POST['llname'];
        }
        if (isset($_POST['lphone'])) {
            $lphone=$_POST['lphone'];
        }
        if (isset($_POST['lemail'])) {
            $lemail=$_POST['lemail'];
        }
        if (isset($_POST['lcity'])) {
            $lcity=$_POST['lcity'];
        }
        if (isset($_POST['lphotos'])) {
            $lphotos=$_POST['lphotos'];
        }
        var_dump($lfname);
        }


        ?>
    <html>
        <head>
            <title>תמונה במתנה</title>
            <meta charset="utf-8">
            <link href="admin-style.css" rel="stylesheet" type="text/css">
            <script type="text/javascript" src="jquery.js"></script>

        </head>

        <body>
        <div id="container">
            <div id="customer-list">

            </div>
            <button type="button" id="loadbtn">טען</button>
            <div id="search">
                <form id="searchForm" action="admin.php" method="post">
                    שם פרטי:<input type="text" name="fname" id="fname">שם:
                    שם משפחה:<input type="text" name="lname" id="lname">
                    טלפון:<input type="text" name="phone" id="phone">
                    אימייל:<input type="text" name="email" id="email">
                    <input id="searchForm" type="submit" name="searchbtn" value="חפש" />
                </form>

            </div>
            <div id="serchList">

            </div>
            <div id="editCustomer">

            </div>
        </div>
                <script type="text/javascript">

                    $(document).ready(function() {  

                    showNoPicture();
                    alerta();



                    function showNoPicture() {


                         $("#loadbtn").click(function(){
                            var s = '                       <?php
    $link = mysql_connect($db_host,$db_user,$db_pass);
    if(!$link) die ('Could not connect to database: '.mysql_error());
    mysql_select_db($db_name,$link);
    mysql_query("SET NAMES 'utf8'");
        $i=0;
                        echo '<table border=1 cellspacing="0" cellpadding="0">';
                        echo '<tr>';

                        echo '<td>שם פרטי</td>';
                        echo '<td>שם משפחה</td>';
                        echo '<td>טלפון</td>';
                        echo '<td>אימייל</td>';
                        echo '<td>עיר</td>';
                        echo '<td>שעת רישום</td>';
                        echo '<td>מספרי תמונות</td>';
                        echo '<td>שמור</td>';
                        echo '</tr>';

                        $loadQuery="SELECT * FROM `claients` WHERE `eventreg_pictures` is null";
                        $result=mysql_query($loadQuery);
                        while($row= mysql_fetch_array($result)){
                            $client= $row;
                            $clients[]=$client;

                            echo '<tr>';
                            echo '<form id="loadForm" method="post" action="admin.php">'; 

                            echo '<td><input type="text" id="lfname" name="lfname" value="'.$client[1].'"/></td>';
                            echo '<td><input type="text" id="llname" name="llname" value="'.$client[2].'"/></td>';
                            echo '<td><input type="text" id="lphone" name="lphone" value="'.$client[3].'"/></td>';
                            echo '<td><input type="text" id="lemail" name="lemail" value="'.$client[4].'"/></td>';
                            echo '<td><input type="text" id="lcity" name="lcity" value="'.$client[5].'"/></td>';
                            echo '<td>'.$client[7].' ';
                            echo '<td><input type="text" id="lphotos" name="lphotos"/></td>';
                            echo '<td><input type="submit" id="savebtn" name=savebtn" value-"שמור"/></td>';
                            echo '</form>';
                            echo '</tr>';

                            }
                        echo '</table>';

                    ?>';
                            $("#customer-list").html(s);
                            //$("#customer-list").load('loadClient.php');
                            }); 

                    };



                    function alerta() {

                        $("#searchForm").click(function(){
                        s='<?php $searchEmail; ?>';
                        $("#customer-list").html(s);
                            }); 

                    };

        $(".btnClass").click(function(){
            alert('hi');
        //$("#customer-list").load('ghfgh.php');
        });         

    });
            </script>

        </body>
    </html>
4

2 に答える 2

3

これはあなたの問題かもしれません:

   while($row= mysql_fetch_array($result)){
        $client= $row;
       $clients[]=$client;

       echo '<tr>';
      echo '<form id="loadForm" method="post" action="admin.php">'; 

formwhile ループの外でタグを取得します。同じ ID で複数のフォームを作成している可能性があります。また、多くの ID を繰り返します。

于 2013-08-16T19:40:30.393 に答える