2014-01-18 2 views
1

데이터베이스에서 한 행을 취할 수있는 방법과 행의 모든 ​​값에 대해 "|"PHP를 사용하여 데이터베이스에서 1 행을로드하지만

지금, 내가 행의 값을 모두로드하려면이 방법을 사용하십시오

$username = mysqli_query($con,"SELECT `username` FROM `users` WHERE ID = $id"); 
while($usernameDB = mysqli_fetch_array($username)) 
    { 
    echo $usernameDB['username']; 
    echo "|"; 
    } 
$lastname = mysqli_query($con,"SELECT `lastname` FROM `users` WHERE ID = $id"); 
while($lastnameDB = mysqli_fetch_array($lastname)) 
    { 
    echo $lastnameDB['lastname']; 
    echo "|"; 
    } 

이 방법, 나는 에코와 같은 것입니다 : | mylastname

MyName로를 | 나는 40 값을로드 할 때

과 좋은 협력이 ... 문제가

는 단일 행을로드 할 수있다 ... 나는 40 번 반복하는 것은 좋은 생각이 아니다라고 생각 ...하고 "모든 값에 대해 | 추가"와 같은 스크립트를 추가하십시오. 내보기처럼 ...?

은 대단히 감사합니다!

답변

1
$username = mysqli_query($con,"SELECT `username`,`lastname` FROM `users` WHERE ID = $id"); 
$char = "|"; 
while($usernameDB = mysqli_fetch_array($username)) 
    { 
    echo $usernameDB['username']; 
    echo $char; 
    echo $usernameDB['lastname']; 
    echo $char; 
    } 
+0

대단히 감사합니다 !! – Ribis

0
$username = mysqli_query($con,"SELECT * FROM `users` WHERE ID = $id"); 
if ($usernameDB = mysqli_fetch_assoc($username)) { 
    echo implode('|', $usernameDB); 
}else{ 
    echo 'not found'; 
} 
+0

가 대단히 감사합니다! – Ribis

+0

당신을 진심으로 환영합니다. – aconrad

0

당신은 ..로 선택하여 MySQL과 그것을하고

SELECT * INTO OUTFILE '/output.txt' 
FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"' 
LINES TERMINATED BY '\n' 
FROM users; // Add condition to restrict to 1 row 

또는 PHP와

는 결과가 배열로 설정하기 이 파일을 읽고 "사용 내파 수 | " 분리 기호.

3

이 작업은 단일 SQL 쿼리로 모두 수행 할 수 있습니다. 이 시도 :

SELECT group_concat(`username` separator '|') as usernames, 
     group_concat(lastname separator '|') as lastnames 
FROM `users` 
WHERE ID = $id"; 
+0

대단히 감사합니다 !!! – Ribis

관련 문제