извлечение данных из БД с помощью javascript и php

Этот JS var имеет страну

<script type="text/javascript">
    var siteCmd_Country="<?php echo siteCmd_Country_P ;?>";  
</script>

function getCountryRedirectUrl() {

        var  url_res = '#';
        if(geoCountryName != '' && geoCountryName != null){

            if(geoCountryName =='United Kingdom'){
                //  window.location=Url+'uktutorsdirectory.co.uk';
                url_res = Url+'UK';//Url+'uk';
            }else if(geoCountryName =='United States'){
                url_res = Url+'usa';
            }else if(geoCountryName =='Canada'){
                url_res = Url+'canada';
            }else if(geoCountryName =='India'){
                url_res = Url+'india';
            }else if(geoCountryName =='Italy'){
                url_res = Url+'italy';
            }else if(geoCountryName =='Ireland'){
                url_res = Url+'ireland';
            }else if(geoCountryName =='Malaysia'){
                url_res = Url+'malaysia';
            }
        }
        return url_res;
}

эта функция дает изменения url на основе geoCountryName(это в основном страна frm whr сайт был доступен)
Что я хочу, так это то, что вышеуказанный метод жестко закодирован для каждой страны. Теперь я создал запись в БД, которая отображает страну с ее псевдонимами. поэтому я передаю geoCountryName в запрос и получаю псевдонимы и добавляю url с псевдонимами.

url_res = Url+ «countrylias»; который находится в JS funct и псевдоним приходит frm php-mysql

Я пытался использовать php, но он не работает хорошо.ниже приведен код

    $conn = mysql_connect(HOSTNAME, DBUSER, DBPWD);
    mysql_select_db(DBNAME, $conn);
    mysql_query('SET CHARACTER SET utf8'); 
    $sWhere = "CountryName=".siteCmd_Country_P;
    $sql = "SELECT CountryAlias FROM `t_countrycharges`  "
            . "$sWhere ";

    $pacrs = mysql_query($sql, $conn);
    $num_rows = mysql_num_rows($pacrs);
    $row = @mysql_fetch_object($pacrs))
    $CountryAlias = $row->CountryAlias;

На самом деле страница, в которой содержится весь этот код, является страницей php, поэтому мне нужно добавить весь код на той же странице. теперь, когда я запускаю страницу с этим кодом, половина страницы не загружается и не показывает никаких выходных данных. Пожалуйста, помогите мне с этим как можно скорее.Мне нужно запустить php на той же странице, но нет никакого действия или события щелчка, которым можно управлять, поэтому, пожалуйста, помогите на нем. Вся помощь ценится.

Спасибо,
Vinay

2 ответа

  1. Я просто вставлю пример проекта, над которым я работаю здесь. Думаю, это поможет вам понять. Я предполагаю, что вы в порядке, jQueryтак как у вас есть это в качестве тега.

    Для начала, мы просто ajax, чтобы получить данные. Сторона Javascript:

    $.getJSON('urltofilesearch_stores/', {id: locationID}, function (json) {
    console.log(json) //this is the data which will be a javascript object
        var html = '';
    
        for (var i = 0; i < json.length; i++) {
          var obj     = json[i];
          var id      = obj.ID;
          var name    = obj.CountryAlias;
    
          html += "<div class="result">id:" + id + " name: " + name + "</div>";
        }
      }).fail(function (err) {
        $('.error').html("error in getting the data");
      }).done(function () {
        $('.element').append(html);
      });
    

    И тогда у нас есть сторона PHP. Вы должны будете echoрезультаты для javascript, чтобы иметь возможность видеть их, и убедитесь, что больше ничего не печатается.

    $sWhere = "WHERE CountryName=".mysql_real_escape_string($_GET['id']);
    $sql = "SELECT CountryAlias FROM `t_countrycharges`  "
            . " $sWhere ";
    $pacrs = mysql_query($sql, $conn);
    $data = array();
    while($row = mysql_fetch_assoc($pacrs)){
      $data[]['ID'] = $row['ID'];
      $data[]['CountryAlias'] = $row['CountryAlias'];
    }
    
    return json_encode($data);