1

私は配列形式でポスト経由でデータを取得し、データベースに保存するこのアクションを持っています。この部分は機能しますが、ajax経由でこれを実行しようとしています。フォームからデータを取得するか、データを私のphpスクリプト。

<?php
  $elegido = $_POST['producto'];
  if(empty($elegido))  {
    echo("No has seleccionado suficientes productos");
  } 
  else  {
    $N = count($elegido);
    for($i=0; $i < $N; $i++)  {
    $elegidos =  $elegido[$i];
    $conn=mysql_connect('localhost', 'user', 'pass');
    mysql_select_db("database",$conn);
    $query = "INSERT INTO table (column)";
    $query .= "VALUES ('".$elegidos."')";
    mysql_query($query) or die("Error sending data.<br>");   
  }
 echo("Los datos fueron enviados correctamente, ¡gracias por participar!");
}
?>

私はこれを実装しましたが、うまくいきません

jQuery(function($) { 
$("#enviar").click(function(e) {
    e.preventDefault();
        var opciones = {
            method:"post",
            url:"procesar.php",
            producto = [];
            data:{
                data: {producto:producto},
            },
            success:function(result){
                $("body .mensaje").remove();
                if(result=="exito"){
                    $("body").append("<div class='mensaje'>Datos Enviados!</div>");
                }else{
                    $("body").append("<div class='error'>ERROR</div>");
                }   
            }   
        };
    $.ajax(opciones);   
 });
 });

何が起こっているのか手がかりはありますか?

4

2 に答える 2

0

構文エラー ( の行全体producto = [];) があり、変数をフォームから php スクリプトに送信していません。

これ:

        url:"procesar.php",
        producto = [];
        data:{
            data: {producto:producto},
        },

次のようになります。

        url:"procesar.php",
        data: $('form').serialize(),
于 2013-09-16T18:46:16.943 に答える