在同一个文件上调用PHP

时间:2015-11-02 22:05:56

标签: javascript php jquery file

我有一个问题:有没有办法从同一个文件中调用php查询?

这是我的代码:

<?php 
function aggiungiPagine(){

    global $conn;

    header('Access-Control-Allow-Origin: *');

    $nomePagina = $_POST['nomePagina'];
    $descrizionePagina = $_POST['descrizione'];

    $comando = "select * from Pagine where Nome='$nomePagina'";

    $query = mysqli_query($conn, $comando); //trova tutti i risultati con quelle carateristiche
    $raws = mysqli_num_rows($query); //individua il numero di record trovati ed inseriti nella matrice $query

    if($raws == 0){ // controllo che non sia stato trovato l'utente
        $comando = "INSERT INTO Pagine (ID_Pagina,Tipo,Nome,Descrizione,Contenuto) VALUES (NULL,'Principale','$nomePagina','$descrizionePagina','')";
        $result=mysqli_query($conn, $comando)or die(mysqli_error());
        $error ="pagina inserita";
    }
    else{
        $error="Pagina con lo stesso nome gia trovata";
    }
    mysqli_close($conn); //chiudo la connessione col db
} ?>

和同一文件中的js脚本:

<script>
$(document).on('click', "#btnAggPagPrinc", function(event) {
     $.post(aggiungiPagine(), $("#aggPagPrinc :input").serializeArray(), function(info){
        tappoOverlay();
        caricaPagPrinc();
    });
});

我使用jQuery发布数据。

抱歉英语不好,我是意大利人

2 个答案:

答案 0 :(得分:0)

  1. 将jQuery POST请求更改为$.post('filename.php', data)。 AJAX请求仅调用URL请求。

  2. 在URL下隐藏的AJAX请求运行操作(在您的示例中为filename.php)。因此,如果你的php文件里面有函数,你必须调用它。

  3. 添加到PHP文件的末尾,您只需要将aggiungiPagine()添加到调用函数。

  4. 提示:将PHP代码与Javascript代码分开。

    提示:如果您想将数据从AJAX请求传递到Javascript代码,您的php代码必须返回一些数据(例如echoreturn)。

答案 1 :(得分:0)

您可以使用ajax发布内容。

<script>
  $("#btnAggPagPrinc").on('click', function(event) {
    var stuff = $("#aggPagPrinc :input").serializeArray();
    $.ajax({
      type: 'POST',
      url: 'filename.php',
      data: stuff
    });
  });
</script>

并在您的PHP页面上(无论是否是同一页面),请执行此操作。

if(isset($_POST) && !empty($_POST)){
    aggiungiPagine();    //call your function
}