2013-08-07 2 views
0

Я пытаюсь отправить к MySQL с JQuery и PHP:Ajax вызов функции PHP

JQuery:

var data = $("#prueba").text(); 
$.ajax({ 
    type: "POST", 
    url: "insertar_mysql.php", 
    data: { 
    values: data 
    }, 
    success: function(msg) { 
    if (msg) { 
     alert('success'); //testing purposes 
    } else { 
     alert('fail'); //testing purposes 
    } 
    } 
}); 

Затем в той же папке, у меня есть файл insert_mysql.php, а код

$nombre = $_POST['values']; 

Проблема в том, что функция AJAX не работает и не знает точно, почему. Код никогда не переходит в insertar_mysql.php.

UPDATE:

я решил проблему, каталог файлов был не прав, но на самом деле у меня есть на более проблемы, Chorme консоль говорит:

POST http://uplaber.com/manager/insertar_mysql.php 403 (Forbidden) jquery-latest.js:8706 
    send jquery-latest.js:8706 
    x.extend.ajax jquery-latest.js:8136 
(anonymous function) uplaber-manager:988 
x.event.dispatch jquery-latest.js:5095 
v.handle 

любой совет, почему запрещено ??

+1

Вы уверены, что имя файла: insertar_mysql.php или insert_mysql.php? – JackTurky

+1

Используйте 'alert (data);' befor ajax.See firefox console и проверьте ошибки. – ops

+0

Вы возвращаете сообщение? потому что, если вы не вернете msg из 'insertar_mysql.php', функция ajax всегда будет возвращать предупреждение. – Lan

ответ

0

Замените функцию ajax следующим образом в этой функции. Я добавил событие ошибки, чтобы убедиться, что в вашем вызове ajax есть какая-либо ошибка.

var data = $("#prueba").text(); 
$.ajax({ 
    type: "POST", 
    url: "insertar_mysql.php", 
    data: { 
    values: data 
    }, 
    success: function(msg) { 
    if (msg) { 
     alert('success'); //testing purposes 
    } else { 
     alert('fail'); //testing purposes 
    } 
    }, 
    error:function(e){ 
     alert("something wrong"+ e) // this will alert an error 
    } 
}); 
0
var data = $("#prueba").text(); 
var dataString = "value="+data; 
$.ajax({ 
    type: "POST", 
    url: "insertar_mysql.php", 
    data: dataString , 
    success: function(msg) { 
     alert(msg); //testing purposes 
    } 
}); 

PHP

$nombre = $_POST['value']; 
echo $nombre; 
0

Если insertar_mysql.php в как адрес:
[drive]:\wamp\www\insertar_mysql.php, Вы можете использовать url: "/insertar_mysql.php" еще как [drive]:\wamp\www\new\insertar_mysql.php, Вы можете использовать url: "/new/insertar_mysql.php"
Попробуйте этот код:

$.ajax({ 
    url:"insertar_mysql.php", 
    data:{values: data}, 
    dataType:"html", 
    cache:false, 
    context:document.body, 
    type:"POST", 
    success: function(result) { 
     if (msg) { 
      alert('success'); //testing purposes 
     } else { 
      alert('fail'); //testing purposes 
     } 
    },Error: function(xhr,ajaxOptions,thrownError) { 
     alert(xhr.status); 
     alert(thrownError); 
    } 
}); 
0

я нашел в хромированной консоли это

POST http://uplaber.com/index.php/es/insertar_mysql.php 404 (Not Found) jquery- latest.js:8706 
send jquery-latest.js:8706 
x.extend.ajax jquery-latest.js:8136 
(anonymous function) uplaber-manager:988 
x.event.dispatch jquery-latest.js:5095 
v.handle jquery-latest.js:4766 

так я думаю, что моя проблема в том, каталог моего файла insertar_mysql-PHP не является правильным, я постараюсь найти нужный каталог.

+0

Заменить 'url: http: //uplaber.com/es/insertar_mysql.php ",';) – ops

+0

OMG проблема в том, что в eclipse каталог, который явно является моим файлом, неверен, я проверил каталог с filezilla и теперь WORKS !!!!! !!! –

Смежные вопросы