mysql_fetch_array의 while 함수에 문제가 있습니다. 나는 성명서 이후에 무엇을 사용해야하는지 실험했으며, 지금 내가 한 것은 이전보다 잘 작동한다. 나는 서로의 내부에 루프를로드 할 수 있다고 생각했지만 명확하게는 그렇지 않았습니다. 저는 현재 처음 두 문장에 중괄호가 있고 다른 문장에는 중괄호가 없습니다. 코드에서이를 분명하게 볼 수 있습니다.mysql_fetch_array의 여러 while 문이 예기치 않은 오류를 일으킴
그러나 이제는 각 문 다음에 여러 변수가 있으면 두 번째 변수가 에코 될 때 작동하지 않게된다는 것을 의미합니다. 배열을 변수로 사용하는 것을 피하려고하는 것은 이후에 훨씬 쉽게 레이아웃 할 수 있습니다. 여기서 무슨 일이 일어나고 있는지 확실하지 않습니다. 나는 보통 모든 문장 다음에 중괄호를 사용하지만 모든 것이 중복되게 만들었습니다. 모든 변수가 작동하도록하려면 어떻게해야합니까? 나는 PHP와 아직 훌륭하지 않으며 지금까지 모든 도움을 주셔서 감사합니다!
나는 mysqli를 사용하고 있어야한다는 것을 알고 있기 때문에 장래의 목적으로 주위를 어지럽히고있다. 나는 최근에 mysqli를 배웠으므로 당분간 mysql을 더 편하게 느낄 수 있기 때문에 mysql을 사용하고 있었다. 여기
어쨌든 코드 : 모든//fetch favourited artist(s)
$fetchartistFavourite = mysql_query("SELECT * FROM artistfavourites WHERE username = '$username' AND password = '$pass';")or die(mysql_error());
while ($artistFavourite = mysql_fetch_array($fetchartistFavourite)){
$favouritedArtist = $artistFavourite['artistname'];
$favouritedArtistUrl = $artistFavourite['artisturl'];
//fetch favourite track(s)
$fetchtrackFavourite = mysql_query ("SELECT * FROM trackfavourites WHERE username = '$username' AND password = '$pass'")or die(mysql_error());
while ($trackFavourite = mysql_fetch_array($fetchtrackFavourite)){
$favouritedTrack = $trackFavourite['artistname'];
$favouritedTrackUrl = $trackFavourite['artisturl'];
//Get news from favourited artist(s)
//Get updates to bio
$fetchupdatedBio = mysql_query ("SELECT * FROM members WHERE artistname = '$favouritedArtist'")or die(mysql_error());
while ($updatedBio = mysql_fetch_array($fetchupdatedBio))
$updatedBio = $updatedBio['bio'];
//Get updates to profile pic
$fetchupdatedProfile = mysql_query ("SELECT * FROM members WHERE artistname = '$favouritedArtist'")or die(mysql_error());
while ($updatedProfile = mysql_fetch_array($fetchupdatedProfile))
$updatedProfile = $updatedProfile ['image1'];
//Get any new pictures
$fetchPic = mysql_query ("SELECT * FROM pictures WHERE artistname = '$favouritedArtist'")or die(mysql_error());
while ($pic = mysql_fetch_array($fetchPic))
$pic = $pic['picurl'];
//Get any new tracks
$fetchTracks = mysql_query ("SELECT * FROM tracks WHERE artistname = '$favouritedArtist'")or die(mysql_error());
while ($tracks = mysql_fetch_array($fetchTracks))
$trackurl = $tracks['trackurl'];
$trackname = $tracks['trackname'];
//Get any new gigs
$fetchGigs = mysql_query ("SELECT * FROM gigs WHERE artistname = '$favouritedArtist'")or die(mysql_error());
while ($gigs = mysql_fetch_array($fetchGigs))
//arrange gig data into format to be echoed
$gig = $favouritedArtist.' is playing for the gig ' .$gigs['gigname'].' at ' .$gigs['venue'].' on the '.$gigs['day'].'th of '.$gigs['month'].', '.$gigs['year'];
//Get any new sessions
$fetchSessions = mysql_query ("SELECT * FROM sessions WHERE artistname = '$favouritedArtist'")or die(mysql_error());
while ($sessions = mysql_fetch_array($fetchSessions))
$sessionName = $sessions ['title'];
//Get new tracks from favourited tracks(s)if the artist has not been favourited
$fetchnewTrack = mysql_query ("SELECT * FROM tracks WHERE artistname = '$favouritedTrack' AND artistname !='$favouritedArtist'")or die(mysql_error());
while ($newTrack = mysql_fetch_array($fetchnewTrack))
$trackname2 = $newTrack['trackname'];
//asign all variables into an
echo $trackname;
}
}
정확히 무엇이 문제였습니까? 그리고 mysqli를 사용해서는 안된다. 당신은 PDO – karka91
을 사용해야합니다. 조금 질문을 바꾸었지만 기본적으로 나는 무슨 일이 일어나는지 알지 못합니다. 그러나 여러 while 서술문이 변수 작업을 멈추게하는 것 같습니다. 나는 크게 PDO 대 mysqli를 연구했으며 mysqli는 프로젝트를위한 더 나은 옵션이었다. –