集成jquery ajax表单和json

时间:2011-12-09 00:45:58

标签: php jquery ajax forms xpath

我开始网络开发,所以也许这是一个非常简单和愚蠢的问题,但我想找到一种方法来解决这一切,请帮助。

我有一张表格:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<style type="text/css">
<!--
body,td,th {
    font-family: Calibri;
}
.style1 {font-size: 24px};
-->
#wrapper {
    margin: 0 auto;
    width:600px;
    height:1000px;
    margin-top:50px; 
    background:url(bgMob.jpg);
    border:solid;
    border-color:#CCCCCC;
    }
#inside {
    width:920px;
    height:1500px;
    margin-left:30px;
    margin-right:30px;
    }
.style2 {color: #CC0000}
.style4 {color: #FF6600}
.style5 {color: #FF0000}
.styleField {
    border-radius:5px;
    border-width:thin;
    border-color:#CCCCCC;
    height:30px;
    font-family:Calibri;
    font-size:16px;
    }
.styleField:hover {
    background:#CC0000;
    font-style:normal;
    color:#FFFFFF;
    }
.styleButton {
    background:#EEEEEE;
    border-radius:5px;
    border-width:thin;
    border-color:#CCCCCC;
    height:30px;
    }
    .styleButton:hover {
    background:#CCCCCC;
    }
</style></head>

<body>

<div align="center" class="style1 style2"><span class="style5">creator</span><span class="style4"></span></div>
<div id="wrapper"><div id="inside">
    <form id="city" name="city" action="<?php echo $_POST["city"]; ?>" method="post">
    <label>CITY name :<br /> 
      <input name="city" type="text" class="styleField" size="50" />
    </label>
    <label>
    <input name="city" type="submit"  class="styleButton" value="Check!" />
    </label>
  </form>
  <form id="form1" name="form1" method="post" action="">
    <label>Enter the site URL:<br /> 
      <input name="textfield" type="text" class="styleField" size="50" />
    </label>
    <label>
    <input name="Submit" type="submit" class="styleButton" value="Check!" />
    </label>
  </form>
  <hr />
  <form id="form0" name="form0" method="post" action="">
    <label>Enter the  URL where is all deals:<br /> 
    <input name="textfield0" type="text" class="styleField" size="50" />
    </label>
    <label>
    <input name="Submit0" type="submit" class="styleButton" value="Check!" />
    </label>
  </form>
  <hr />
  <form id="form2" name="form2" method="post" action="">
    <label>
    Xpath location of links where is ALL deals<br />
    <input name="textfield2" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit2" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form3" name="form3" method="post" action="">
    <label>
    Xpath location of TITLE <br />
    <input name="textfield3" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit3" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form33" name="form33" method="post" action="">
    <label>
    Xpath location of SUB-TITLE <br />
    <input name="textfield33" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit33" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form4" name="form4" method="post" action="">
    <label>
    Xpath location of PRICE <br />
    <input name="textfield4" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit4" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form5" name="form5" method="post" action="">
    <label>
    Xpath location of Original PRICE <br />
    <input name="textfield5" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit5" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form6" name="form6" method="post" action="">
    <label>
    Xpath location of DISSCOUNT <br />
    <input name="textfield6" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit6" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form7" name="form7" method="post" action="">
    <label>
    Xpath location of MAP - latitude, longitude <br />
    <input name="textfield7" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit7" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form8" name="form8" method="post" action="">
    <label>
    Xpath location offer TIME <br />
    <input name="textfield8" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit8" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form9" name="form9" method="post" action="">
    <label>
    Xpath location of BUSINESS name <br />
    <input name="textfield9" type="text" class="styleField" size="50" />
    </label>
    <input name="Submit9" type="submit" class="styleButton" value="Check!" />
  </form>
  <hr />
  <form id="form10" name="form10" method="post" action="">
    <label>
      <div align="center">
        <input name="Submit10" type="submit" class="styleButton" value="Create a scraping file!" />
    </div>
    </label>
  </form>
  <hr />
</div>
</div>
</body>
</html>

我有第二个php文件,我想用jquery执行并基于输入的xpath格式...

这是:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title>Scraping - eKupon.ba</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

</head>

<body>



<?php

error_reporting(E_ALL);

require_once('../includes/php.scarping.php');





//Adresa sajta

$scrapeConf['homePage']             = 'http://www.ekupon.ba';



//Adresa gdje se nalaze sve ponude

$scrapeConf['mainURL']              = 'http://www.ekupon.ba/aktivne-ponude/';



//XPATH putanja do linkova od svake ponude ponaosob

$scrapeConf['PonudaLinkovi']        = "//div[@class='pdodatna-naslovbox']/a/@href";



//XPath Putanja do naslova ponude

$scrapeConf['PonudaNaslov']         = "//div[@id='naslovbox']/span[@class='naslov']";



//XPath Putanja do podnaslova ponude

$scrapeConf['PonudaPodnaslov']      = "//div[@id='naslovbox']/span[@class='podnaslov']";



//XPath Putanja do prve slike koju zelimo

$scrapeConf['PonudaSlika']          = "//*[@id='ponuda']//a/img/@src";



//XPath putanja do polja sa cijenom

$scrapeConf['PonudaCijena']         = "//*[@id='ponuda']//div[@class='cijena']";



//XPath putanja do polja sa orginalnom cijenom

$scrapeConf['PonudaOrgCijena']      = "//*[@id='podaci']//span";



//XPath putanja do polja sa orginalnom cijenom

$scrapeConf['PonudaPopust']         = "//table[@id='podaci']//tr[2]/td[2]/span";



//Xpath do dijela koji sadrzi ili <script> sa lat lng ili url sa lat|lng

$scrapeConf['PonudaLatLng']         = "//table[@id='lokacija']//td/script[2]";



//Xpath putanja do elementa koji sadrzi vrijeme do istka ponude

$scrapeConf['PonudaVaziDo']         = "//table[@class='sjena']//span[@class='sat']";



//Xpath putanja do dijela koji sadrzi ime firme (nije obavezno)

$scrapeConf['PonudaFirmaIme']       = "//table[@id='lokacija']//p/strong";



//Xpath putanja do dijela koji sadrzi adresu firme (nije obavezno)

$scrapeConf['PonudaFirmaAdresa']    = "";



//Xpath putanja do dijela koji sadrzi telefon  (nije obavezno)

$scrapeConf['PonudaFirmaTel']       = "";



//Xpath putanja do dijela koji sadrzi email  (nije obavezno)

$scrapeConf['PonudaFirmaMail']      = "";





//Uzmi sve ponude

$ponudeList = xpathPonude($scrapeConf);



//DODAVANJE PONUDA

foreach ($ponudeList as $key => $ponuda) {

    //OVDE obraditi varijable iz ponuda ako ima potrebe...

    $ponuda['naslov']    = str_replace(' -', '', $ponuda['naslov']);

        //sacuvaj sliku

        $imeSlike = date('YMDHM-') . $ponuda['lat'] .'.jpg';

        save_image($ponuda['slika'], '/home/pluspon/public_html/slike/'. $imeSlike);

        $ponuda['slika'] = $imeSlike;







    //  DO OVE LINIJE SVE PONUDE I VARIJABLE MORAJU BITI

    //  SREDJENE I SPREMNE ZA UPIS U BAZU

    print insertNew($ponuda['naslov'], $ponuda['podnaslov'], $ponuda['lat'], $ponuda['lng'], $ponuda['slika'], $ponuda['url'], $ponuda['popust'], $ponuda['vaziDo'], $ponuda['firma'], $ponuda['firmaadresa'], $ponuda['firmaemail'], $ponuda['firmatelefon'], $ponuda['firmaURL']);

}



//Debug vreme

print 'Vreme proteklo '. sk_genTime() .' sekundi';

?>

</body>

</html>

我想要的是当用户在表单中键入xpath并单击check然后从php文件中获取$ result并知道xpath是否正确。将结果打印输出到按钮上。我知道可以用ajax和jquery做到这一点,但我不是很好,所以我也想付钱给想要帮助我的人。真的很抱歉我的英语,但我现在正在努力工作。

我还需要用from form ...

中的值替换apostrof(')中的文本

1 个答案:

答案 0 :(得分:0)

将onSubmit参数添加到form标签,该标签调用JavaScript函数。该JavaScript函数应该使用JQuery post函数调用PHP脚本,并将表单数据传递给它。 post函数的成功回调将接收PHP脚本返回的数据,您可以通过DOM将它放在调用页面的任何位置。