2013-03-25 4 views
1

Мне нужно развернуть приложение, написанное на php, оно было разработано с использованием сервера wamp (при выигрыше). Теперь я должен развернуть его на сервере debian2 debian. Приложение работает на ПК разработчиков, используя wamp, но не может заставить его работать на сервере debian.AJAX XMLHttpRequest дает ошибку

Проблема заключается в том, что все сетки (JQuery сетки) содержимое нагрузки с использованием Ajax

grid.jqGrid({ 
      datatype: "xml", 
      url:'../Controladores/cPedidos.php?action=lpd', 
      mtype: 'POST', 
      colNames:['FECHA','DEPOSITO','USUARIO'], 
      colModel:[ 
       {name:'fecha_pedido',index:'fecha_pedido',width:120, sorttype: 'date'}, 
       {name:'deposito',index:'deposito',width:500, editable:false}, 
       {name:'usuario_id',index:'usuario_id',width:150, editable: false} 
      ], 
      rowNum:10, 
      rowList:[10,20,40], 
      pager: '#paginacion', 
      gridview:true, 
      rownumbers:true, 
      ignoreCase:true, 
      sortname: 'fecha_pedido', 
      viewrecords: true, 
      sortorder: "asc", 
      caption:"Pedidos", 
      height: "100%", 
      subGrid : true, 
      subGridUrl: '../Controladores/cPedidos.php?action=lad', 
      subGridModel: [{ name : ['Codigo','Cantidad','Articulo','Estado','Categoria','Observaciones'], 
       width : [50,50,450,60,60,150] }], 
      editurl: '../Controladores/cPedidos.php?action=editar', 
      ondblClickRow: function(id, ri, ci) { 
       // edit the row and save it on press "enter" key 
       grid.jqGrid('editRow',id,true,null,null, 'clientArray'); 
      }, 
      onSelectRow: function(id) { 
       if (id && id !== lastSel) { 
        // cancel editing of the previous selected row if it was in editing state. 
        // jqGrid hold intern savedRow array inside of jqGrid object, 
        // so it is safe to call restoreRow method with any id parameter 
        // if jqGrid not in editing state 
        if (typeof lastSel !== "undefined") { 
         grid.jqGrid('restoreRow',lastSel); 
        } 
        lastSel = id; 
       } 
      } 
     }).jqGrid('navGrid','#pager',{add:false,edit:false},{},{},myDelOptions,{multipleSearch:true,overlay:false}); 
     //grid.jqGrid('filterToolbar',{defaultSearch:'cn',stringResult:true}); 
     $("#filtro").change(function(){ 
      var valor = $("#filtro").val(); 
      $("#tablapedidos").jqGrid().setGridParam({url:'../Controladores/cPedidos.php?action=lpd&filtro='+valor}).trigger('reloadGrid'); 
     }); 

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

если я ввожу URL-адрес непосредственно в браузере (ff), я получаю сообщение об ошибке «Соединение было сброшено», Chrome: «Ошибка 324 (net :: ERR_EMPTY_RESPONSE)». если я делаю это на локальном хосте на компьютере разработчиков я получаю файл XML, страница URL создать файл XML с помощью эха, примера (не полная)

function getArticulosPendientes() { 
if (stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml")) { 
header("Content-type: application/xhtml+xml;charset=utf-8"); } else { 
header("Content-type: text/xml;charset=utf-8"); 
} 
$et = ">"; 
echo "<?xml version='1.0' encoding='utf-8'?$et\n"; 
echo "<rows>"; 

$lista = getListaArticulosPendientes($_POST); 
$resultado = array(); 

for($i = 0; $i < count($lista); $i++) { 
    $fila = $lista[$i]; 
    $dif = diferenciaCompradoPedido($fila['item_id']); 
    if($dif > 0) { 
     $fila['cantidad'] = $dif; 
     array_push($resultado, $fila); 
    } 
    else { 
     array_push($resultado, $fila); 
    } 
} 

for($a = 0; $a < count($resultado); $a++) { 
    $row = $resultado[$a]; 
    $fecha = date("d/m/Y H:i", strtotime($row["fecha_pedido"])); 
    echo "<row id='". $row["item_id"]."'>"; 
    echo "<cell>". $fecha."</cell>"; 
    echo "<cell>". $row["cantidad"]."</cell>"; 
    echo "<cell><![CDATA[". utf8_encode($row["descripcion"])."]]></cell>"; 
    echo "<cell><![CDATA[". $row["categoria"]."]]></cell>"; 
    echo "<cell><![CDATA[". $row["usuario_id"]."]]></cell>"; 
    echo "<cell><![CDATA[". $row["estado"]."]]></cell>"; 
    echo "<cell><![CDATA[". $row["observaciones"]."]]></cell>"; 
    echo "</row>"; 
} 
echo "</rows>"; 

}

любых идеи

ответ

0

Вы используете относительный путь. Изменить путь к абсолютному пути: http://www.yourdomain.com/folder/path/to/Controladores/cPedidos.php?action=lpd

+0

Если я использую браузер для перехода на страницу (абсолютный путь), я все равно получаю те же ошибки, например: http://10.10.10.10/compras/Controladores/cPedidos.php? действие = круг – EricGS

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