나는 사용자가 Spotify 라이브러리를 검색하고 결과를 클릭하여 '재생 목록'에 추가 할 수있는 사이트 작업을하고 있습니다. 이 재생 목록은 PHP를 통해 MySql 데이터베이스에 추가됩니다. 이 모든 것은 spotify href가 추가되었지만 분명히 사용자는 하나 이상의 노래를 재생 목록에 추가하려고합니다.PHP 루프가있는 단일 MySql 테이블에 여러 항목 추가하기
아래의 Brad의 답변 덕분에 데이터베이스 구조가 개선되었지만 재생 목록에 추가 된 각 노래를 반복 재생하고 모든 노래를 올린 다음이를 별도의 행으로 추가하는 방법에 대해서는 여전히 확신이 없습니다. 내 '노래'테이블.
업데이트 됨 'spotify.js'의이 코드는 재생 목록 div에 클릭 된 노래를 추가 한 다음 제출할 숨겨진 입력을 추가합니다. 새 노래를 클릭 할 때마다 새 입력이 만들어 지지만 각 입력의 값이 변경됩니다.
$('.spotify-result').click(function() {
$(this).clone().appendTo($('.selected-list'));
$('.submit-spotify').before('<input type="hidden" id="track_href" class="track" value="" name="track_href" />');
$('.track').val($('.track-href', this).text());
});
이이 현재 작동 제출 '- spotify.php'의 미리보기입니다
<form action="submit_spotify.php" method="post">
<input type="hidden" id="track_href" value="" name="track_href" />
<input type="submit" value="Submit Journix" />
</form>
'spotify.php'에서 양식의 하드 코딩 된 비트가 ...하지만 물론에만 추가입니다 첫 번째 노래는 데이터베이스에.
if($db_server) {
mysql_select_db($db_database) or die ("<p>Couldn't find database.</p>");
$playlist_query = "INSERT INTO playlists (user_id, route_id) VALUES ('$route_id', '$user_id')";
if (mysql_query($playlist_query)) {
$song_query = "INSERT INTO songs (href) VALUES ('$href')";
if (mysql_query($song_query)) {
$message = "<p>Congratulations, your playlist has been added.</p>";
} else {
$message = ("Insert failed. " . mysql_error() . "<br/>" . $song_query);
}
} else {
$message = ("Insert failed. " . mysql_error() . "<br/>" . $playlist_query);
}
} else {
$message = "Error: could not connect to the database.";
}
mysql_close($db_server);
나는 각각에 대해 폼에 새를 추가, 나는 각각의 .val()를 각각 '.spotify-결과'를 통해 실행하고 얻을 거기에 루프를해야합니다 같은데요
? 나는 어디에서부터 각각의 행을 새로운 행으로 입력 할 것인가, 또는 이것이 올바른 접근법 일지에 관해서는 전혀 알지 못한다.
위대한 대답은, 나는 그것을 지금주지 않을 것이다. 감사. – GuerillaRadio