2012-04-03 5 views
0

'file'이라는 테이블이 있는데 여기에 file_id가 저장됩니다. 기본적으로 내 웹 사이트의 사용자는 내 웹 사이트에 파일을 업로드 할 수 있으며 사용자가 파일을 업로드하면 모든 파일 정보가 내 테이블에 업로드됩니다.열 값이 동일한 행 선택

어쨌든

, I 등 사용자가 파일을 삭제, 파일의 이름을 편집, 그들은 업로드 한 모든 파일을 볼 수 있습니다 파일 관리자, 나는했습니다 어떻게

에서 일하고 있어요 파일을 업로드하면 사용자의 고유 ID이 고유 한 파일 ID가있는 행과 함께 업로드됩니다.

내 파일 관리자가해야 할 일은 모두 입니다. 그러나 많은 행이있는 사용자의 ID가과 일치하면 파일 관리자 페이지에 각 파일이 표시됩니다.

가장 쉬운 방법은 무엇입니까?

이것은 내가 쓴 것입니다. 별로, 나도 알아.

$checkfiles = mysql_query("SELECT * FROM repository WHERE userid = '$useridtemp'") or die(mysql_error()); 
$fileinfo = mysql_fetch_array($checkfiles); 
+0

그래, 문제가 어디 있니? 당신은 올바른 길을 가고 있습니다, 그것은 당신에게 userid 컬럼에 그 사용자 ID를 가지고있는 일련의 행들을 줄 것입니다. 이제 루프를 반복하고 file_id 열을 가져와야합니다. – Paystey

답변

1

당신은 기본적으로 거기 :

$user_id_safe = AddSlashes($useridtemp); 
$result = mysql_query("SELECT * FROM repository WHERE userid = '$user_id_safe'"); 
while ($row = mysql_fetch_array($result)){ 
    # this loop will run once for each found row, in $row 
    print_r($row); 
} 

는 그냥 반환 된 행을 통해 사용자는 SQL 주입 공격을 피하기 위해 ID 및 루프 탈출을 추가했다.

+0

고맙습니다! 이 코드는 완벽하게 작동했습니다. –

0

편집 버튼이있는 파일을 테이블에 인쇄합니다. 분명히,이 방법은 파일을 삭제하는 가장 안전한 방법 일 가능성이 높습니다 ...하지만 이것은 교육적인 것이라고 생각했습니다. 어쨌든, 그것은 뭔가입니다.

echo '<table>'; 
foreach($fileinfo as $file) { 
    echo '<tr>'; 
    // Print File info 
    echo '<td>'.$file['filename'].'</td>'; 
    // Print Buttons 
    echo '<td><a href="edit.php?id='.$file['id'].'"><img/></a></td>'; 
    echo '<td><a href="delete.php?id='.$file['id'].'"><img/></a></td>'; 
    echo '</tr>'; 
} 
echo '</table>'; 

나는 빈 이미지를 떠 났어요. You'll have to find some icons yourself.

+0

고마워요! 이것은 완벽하게 작동했습니다! –

관련 문제