计算输出结果并发送到数据库

时间:2015-08-17 13:58:02

标签: javascript php jquery mysql append

我希望从我的数据库输出数据以显示在编号列表中。假设我在数据库中有四个名字。约翰,苏,汤姆,琳达。然后,我将这些名称混合起来并显示出来。它们像我一样出现在我的页面上......

undefined John

undefined Suzy

未定义汤姆

undefined Linda

我希望它们显示为

1 John

2 Suzy

3汤姆

4琳达

然后我希望这些数字按照它们所在的顺序发送到我的数据库,并与它们旁边的名称相关联。现在,当他们发送到我的数据库时,每条记录显示4,所以它只计算输出的行。

我修改了现有脚本,使我的页面可以计为列表。但是,计数输出未显示在页面上。它显示为未定义,但它将作为数字4发送到我的数据库。

为什么这不起作用?

我修改了这个JS

 //'<div class="shuffle_results">' + data[i].firstname + ' ' + data[i].lastname + '</div>' + 

  '<div class="shuffle_results">' + data[i].drafted_order + ' '+ data[i].firstname + ' ' + data[i].lastname + '</div>' + 
       '<input type="hidden" name="count[]" value="' + data[i].drafted_order + '">' +

完整代码

$count = 0;
foreach ($array as $result) :
$count++;
$shuffle_count = $count;
    $shuffle_firstname = htmlentities($result['firstname']);
    $shuffle_lastname = htmlentities($result['lastname']);
    $shuffle_id = htmlentities($result['id']);
    $shuffle_username = htmlentities($result['username']);
    $shuffle_email = htmlentities($result['email']);
?>
    <input type="hidden" name="count[]" value="<?php echo $shuffle_count; ?>">
        <input type="hidden" name="firstname[]" value="<?php echo $shuffle_firstname; ?>">
        <input type="hidden" name="lastname[]" value="<?php echo $shuffle_lastname; ?>">
        <input type="hidden" name="id[]" value="<?php echo $shuffle_id; ?>">
        <input type="hidden" name="username[]" value="<?php echo $shuffle_username; ?>">
        <input type="hidden" name="email[]" value="<?php echo $shuffle_email; ?>">

<?php 

    endforeach;
    // only show this button if we have done a shuffle
     if ( isset($_POST['shuffle'] ) ) :
        echo '<input type="submit" value="Finalize Draft Order" name="insert">';
    endif;

?>
    </form>
<?php        
if (isset($_POST['insert'])) {
    $con = mysqli_connect("localhost", "", "", "");
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
    }
    $draft_stmt2 = $con->prepare("INSERT INTO drafted_players (user_id, drafted_order, firstname, lastname, username, email) VALUES (?, ?, ?, ?, ?, ?)");

  if ( false===$draft_stmt1|| false===$draft_stmt2 ) {
         // Check Errors for prepare
        die('Add to user players prepare() failed: ' . htmlspecialchars($con->error));
    }
     $draft_stmt2->bind_param('iissss', $shuffle_id, $shuffle_count, $shuffle_firstname, $shuffle_lastname, $shuffle_username, $shuffle_email);

    foreach ($_POST['id'] as $i => $shuffle_id) {
        $shuffle_firstname = $_POST['firstname'][$i];
        $shuffle_lastname = $_POST['lastname'][$i];
        $shuffle_username = $_POST['username'][$i];
        $shuffle_email = $_POST['email'][$i];

        $draft_stmt2->execute() or
            die('Add to user players execute() failed: ' . htmlspecialchars($draft_stmt2->error));
    }

JS

 var interval = setInterval(function(){ 
        if( i <= data.length){ 
            console.log( data[i] ); 
            $('#results').append('<div class="result">' +
                        //'<div class="shuffle_results">' + data[i].firstname + ' ' + data[i].lastname + '</div>' + 
                        '<div class="shuffle_results">' + data[i].drafted_order + ' '+ data[i].firstname + ' ' + data[i].lastname + '</div>' + 
                        '<input type="hidden" name="count[]" value="' + data[i].drafted_order + '">' +
                        '<input type="hidden" name="firstname[]" value="' + data[i].firstname + '">' +
                        '<input type="hidden" name="lastname[]" value="' + data[i].lastname + '">' +
                        '<input type="hidden" name="id[]" value="' + data[i].id + '">' +
                        '<input type="hidden" name="username[]" value="' + data[i].username + '">' +
                        '<input type="hidden" name="email[]" value="' + data[i].email + '">' +
                    '</div>');
           var $this = $('.shuffle_results:last'); 
            $this.show().animate({ 
                'left': 0 + 'px', 
                'bottom': + '0px' 
                //$(document).height() - (lineheight * data.length)
            }, { 
                duration: time 
            });
        i++;
        } else { 
            clearInterval(interval); 
        } 
    }, 3000); 
};
$(function(){  
    $('form[name="form"]').on('submit', function(e){
        e.preventDefault();
       $.post('shuffle_results.php', function(data){ 
        var o = $.parseJSON(data); 
        displayResults(o); 
        });
        });
    });

//End test shuffle
    $(document).ready(function () {

0 个答案:

没有答案