0
저는 JQuery Mobile과 PHP를 사용하여 응용 프로그램을 작성하고 있습니다.
문제 : $ _GET은 URL의 값을 검색하지 않고 하나의 JQuery 모바일 페이지 (예 : # page1에서 # page2, Ajax 및 PHP 사용)에서 값을 전달하려고 시도합니다.
URL은 다음과 같이 표시됩니다
을 myApp/#의 PAGE3을 FID 우유 + 치즈 + 버터
PHP =이 "?fid="
을 얻을 수 없습니다?.
이 문제는 JQuery 모바일 (단일 페이지)을 사용하여 URL을 설정하는 방법에 문제가 있음을 알 수 있습니다. 이 문제를 해결하는 데 큰 도움이 될 것입니다. 감사합니다
내 아약스 (조각) :
request.onreadystatechange = function(){
if((request.readyState==4) && (request.status==200 || request.status == 304)) {
if(request.responseText!= undefined){
window.location.replace('#page3?fid='+request.responseText+'');
}
}
}
먼저 PHP 페이지 :
<?php
include '../connect/connect.php';
$ingredients = $_POST['ingredients'];
if (empty ($ingredients) === false){
foreach($ingredients as $key => $ingre){
if ($ingre != 'undefined'){
$refine = substr($ingre, "4");
$refined = mysqli_real_escape_string($con, $refine);
echo $refined;
}
}
}
?>
두 번째 PHP 페이지 :
<?php
if (isset($_GET['fid'])) {
echo 'yes';
} else {
echo 'no';
}
?>
그것은 당신이 해시 기호 후 GET 문자열이 나타납니다. PHP는 해시 서명 후에 아무 것도 얻지 못합니다. 그것은 브라우저에 의해 제거되고 결코 서버로 전송되지 않습니다. –
예, 그게 제가 생각한 것입니다. 그러나 JQuery 모바일은 페이지 사이를 이동할 때 #가 있어야합니다. ...이 주변에 방법이 있을까요? –
js에서 해시 문자열을 파싱하고 그 바코드를 가져 오십시오. –