2010-12-11 2 views
0

데이터베이스에서 임의의 이미지를 표시하는 실험이 있고 이미지가 3면 화면에서 스크롤됩니다 초, 3 초 동안 일시 중지 및 3 초 동안 화면을 스크롤 및 "i"클라이언트 측에이 이미지를 저장할 인덱스 "i"배열을 유지 해요 및 "i"값이 증가하면 다른 이미지를 화면에 스크롤합니다 , 나는 데이터베이스에서 이미지를 표시하고 있기 때문에 "i"가 증가되면 다른 이미지가 데이터베이스의 화면에 표시되어야합니다 (서버 측의 코드가 증가 할 때마다 증분 됨). 사람이, 여기 클라이언트 측 (자바 스크립트)에서 변수가 증가 될 때마다 서버 측 (php)에서 코드를 실행하는 방법

샘플 코드는 ... 방법이 작업을 수행하는

// 서버 측

$myQuery = "SELECT * from image WHERE img_id NOT IN (SELECT img_id from randomtrees where sid=".$sid.") ORDER BY rand() LIMIT 1"; 
$conn = mysql_connect("localhost","xxxxxx","xxxxxxxxxxxx"); 
mysql_select_db("database_name",$conn); 
$result = mysql_query($myQuery); 

$imagepath = 'path to the images folder which is in local host'; 
while ($row = mysql_fetch_array($result)) 
{ 
    $img = $imagepath.$row['img_name']; 
    $id = $row['imageid']; 
    $img_id = $row['img_id']; 
} 
mysql_close($conn); 

// 클라이언트 측

slideimages[i++] = '<img src="<?php echo $img ?>" id="<?php echo $id?>" name="r_img"/>' ; 
+2

아약스 !!!!!!!!!!! – Vishwanath

+0

@vishwanath - 그 대답이어야합니다;) –

답변

0

중 하나를 말해 줄 수 :

1) 필요한 모든 이미지를 하나의 SQL 쿼리로 가져 와서 JavaScript 배열에 기록하십시오. 이미지를 회전하는 데 사용 클라이언트 측

2) window.location을 수정하여 JavaScript를 사용하여 이미지를 변경해야 할 때마다 페이지를 새로 고칩니다.

3) AJAX를 사용하여 JavaScript에서 서버로 요청하여 다른 이미지를 가져온 다음이 응답을 사용하여 페이지에 표시된 이미지를 변경하십시오.

0

이미지 로딩 속도에 신경을 쓰면 처음에는 PHP로 모두 검색하고 JS 배열에 저장하십시오.

Var X[]=<?php json_encode($imgs) ;?>; 

이 페이지 로딩 시간에 대해 관심이 있다면, 당신은 모든 이미지의 이름을 얻을 경우 JS와 필요를로드하거나 Ajax 요청을 서버에 부하를 생성합니다 이미지를 필요로 할 때마다 (만들 수 있습니다 하지만 JS에 모두 저장하는 데 많은 양의 데이터가있는 경우 문제가됩니다. 파일 크기를 늘려 가면됩니다.)

관련 문제