ajax으로 해상도 받아와서 php 조건문 사용이 가능 할까요?
본문
<div>
<div>1234567890</div>
</div>
위와 같은 내용에서
해상도 300이상 700이하 등으로 456을 감추고 싶다고 할때 ajax이용해서 php 조건문을 사용할 수 있을까요?
<?php if(!$is_mobile) { ?>456<?> 이런식으로 모바일에서는 안보이게 가능한데 다양한 해상도 조건에서 사용하고 싶어서요.
완전 초보라 맨땅에 해딩하다가 머리 깨지기 직전에 도움 청해봅니다. ㅠ_ㅠ
답변 3
var width = $(window).width();
if (width>300 && width<700){
$("#div_456").hide();
}
위에처럼 해상도를 받아오신후에 jquery 단에서 안보이게 처리하시면 됩니다.
!-->전달해야 하는 파라미터 값이나 변수값이 있는게 아니라면, css를 응용해서 처리를 해도 충분히 가능합니다.
default.css
@media (min-width:700px) {
div { display:none; } /* 700px 이상에서는 안 보여지게 */
}
/* 700px 이하에서 보여지게 */
@media (max-width:700px) {
div { display:block; }
}
Ajax를 사용하여 PHP 조건문을 적용하여 해당 내용에서 숫자 "456"을 감출 수 있습니다.
다음은 Ajax와 PHP를 사용하여 해당 작업을 수행하는 예시 코드입니다.
HTML:
<div id="content">
<div>1234567890</div>
</div>
JavaScript (Ajax):
$.ajax({
url: "your_php_script.php",
type: "POST",
data: {},
dataType: "html",
success: function(response) {
$("#content").html(response);
},
error: function(request, status, error) {
alert("An error occurred: " + error);
}
});
PHP (your_php_script.php):
<?php
$content = '<div>1234567890</div>';
$resolution = // your code to determine the resolution, e.g. using $_GET or $_POST
if ($resolution >= 300 && $resolution <= 700) {
$content = str_replace('456', '', $content);
}
echo $content;
?>
위의 예시 코드에서, Ajax 요청을 PHP 스크립트(your_php_script.php
)로 전송합니다.
PHP 스크립트에서는 $resolution
변수를 사용하여 해상도를 판별하고,
해당 범위 내의 해상도인 경우 $content
변수의 내용에서 숫자 "456"을 제거합니다.
그리고 수정된 내용을 Ajax 응답으로 반환하여 JavaScript에서 받은 응답을 #content
요소에 적용합니다.
해당 코드는 예시이며,
실제로는 해상도를 어떻게 판별하고 내용을 수정할지에 대한 구체적인 방법이 필요합니다.
예를 들어, 사용자 에이전트 문자열을 분석하거나 JavaScript를 통해 해상도를 감지하는 방법 등을 사용하여 $resolution
값을 설정해야 합니다.
챗GPT 답변입니다.
참고하세요.
!-->!-->!-->