簡體   English   中英

將php變量發送到類並使用Smarty運行mysql查詢

[英]Send php variable to a class and run mysql query with Smarty

我想將php變量發送到運行mysql查詢的類。 這是通過html表單進行的典型搜索。 我必須使用Smarty。

如何將變量“ $ minta”傳遞給sql查詢,以及如何將結果數組返回給php顯示?

Smarty tpl文件正常(帶有ingatlank變量的lista_keres.tpl)。

先感謝您。

圖萬比

的PHP:

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

  include_once "classes/ingatlan.class.php";
  include_once "classes/main.class.php";
  include_once "classes/felhasznalo.class.php";

  $ingatlan = new Ingatlan();
  $felhasznalo = new Felhasznalo();
  $minta = $_POST['keresoszo'];

  $kereses = new Main();
  $kereses->getKeresIngatlan($minta);

        $smarty->assign("kapcsolattartok", $ingatlan->getKapcsolattartok());
        $smarty->assign("ingatlank", $main->getKeresIngatlan());
        $smarty->assign("include_file", lista_keres);

 echo $minta;

}

班級:

<?php

class Main{
private $keresoszo;
...
public function getKeresIngatlan($minta){

    $this->keresoszo=$minta;

    $ret = array();
    $sql="SELECT id FROM table WHERE id LIKE '% ".$keresoszo." %'";
    $ret = $this->db->GetArray($sql);
    return $ret;
}

}
?>

宣布private $keresoszo; 它成為類對象,並且可以通過$this->keresoszo訪問,在您將sql值分配給該對象但尚未使用它的sql查詢中

<?php

class Main{
private $keresoszo;
...
public function getKeresIngatlan($minta){

    $this->keresoszo=$minta;

    $ret = array();
    $sql="SELECT id FROM table WHERE id LIKE '% ".$this->keresoszo." %'";
    $ret = $this->db->GetArray($sql);
    return $ret;
}

}
?>

這是如何獲取結果的方法

  $kereses = new Main();
  $results_set=$kereses->getKeresIngatlan($minta);
  var_dump($results_set);// for testing only 
        $smarty->assign("my_results_set", $results_set);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM