My Site 사용자는 로그인하여 뉴스를 추가 할 수 있습니다. 그건 잘 작동합니다. 나는 뉴스를 표시하려고 할 때 문제가있다. 첫 번째 문제는 뉴스 텍스트가 뉴스 이미지 옆에있는 모든 공간을 채우지 못하면 다음 뉴스 항목이 사이트에서 즉시 볼 수있는 것처럼 너무 빨리 표시된다는 것입니다 (주황색 차단기 아래 표시되지 않음). 이 문제를 해결하기 위해 이미지의 높이에 각 뉴스 게시자 div의 높이를 설정할 수 있다고 생각 했었습니다. 이미지가 div보다 약간 짧았 기 때문에 어떻게 할 것인지 잘 모르겠습니다.PHP의 뉴스 항목 서식 지정을 돕는
두 번째로, 사용자는 자신의 뉴스 게시물에 링크를 넣습니다. 그것들을 활성화 된 상태로 표시하려면 어떻게합니까? 파이어 폭스에서 그들은 단지 텍스트로 나옵니다. 누군가가 나를 올바른 방향으로 향하게 할 수 있었습니까?
$query="SELECT id, date, title, text, author, media1, media2, deleted FROM news ORDER BY id DESC LIMIT 4";
$result=mysql_query($query);
$counter = 0;
$number1 = 1;
$number2 = 2;
while($row = mysql_fetch_array($result)){
if($row['deleted'] == 0) {
if (($counter % 2) == 0) {
echo '<div id="text">';
echo '<a name="'.stripslashes($row['title']).'" id="'.stripslashes($row['title']).'"></a>';
echo '<span class="kisstitle">'.stripslashes($row['title']).'</span><br>';
echo ' (';
echo $row['date'];
echo ')';
echo '<br>';
echo '<br>';
if((preg_match ("/\bjpg\b/",$row['media1'])) || (preg_match ("/\bjpeg\b/",$row['media1'])) || (preg_match ("/\bpng\b/i",$row['media1'])) || (preg_match ("/\bgif\b/i",$row['media1']))){
echo '<img style="max-width:300px;" src="media/news/'.$row['media1'].'" class="floatRightClear" id="border">';
}
if((preg_match ("/\bjpg\b/",$row['media2'])) || (preg_match ("/\bjpeg\b/",$row['media2'])) || (preg_match ("/\bpng\b/i",$row['media2'])) || (preg_match ("/\bgif\b/i",$row['media2']))){
echo '<img style="max-width:300px;" src="media/news/'.$row['media2'].'" class="floatRightClear" id="border">';
}
if((preg_match ("/\bmp3\b/", $row['media1']))) {
echo ' <p id="audioplayer_'.$number1.'" class="floatRightClear">Media Content</p>
<script type="text/javascript">
AudioPlayer.embed("audioplayer_'.$number1.'", {soundFile: "http://kiddiessupportscheme.org/media/news/'.$row['media1'].'"});
</script>';
echo '<br>';
}
if((preg_match ("/\bmp3\b/", $row['media2']))) {
echo ' <p id="audioplayer_'.$number2.'" class="floatRightClear">Media Content</p>
<script type="text/javascript">
AudioPlayer.embed("audioplayer_'.$number2.'", {soundFile: "http://kiddiessupportscheme.org/media/news/'.$row['media2'].'"});
</script>';
echo '<br>';
}
echo stripslashes(nl2br($row['text']));
echo '<br><br>';
echo stripslashes($row['author']);
echo '</div>';
echo '<p align="right" id="seperater"><a href="index2.php?op=News#top">Top</a><img src="images/seperater.jpg" width="950" height="6" style="border:none;" /></p>';
}
else {
echo '<div id="text">';
echo '<a name="'.stripslashes($row['title']).'" id="'.stripslashes($row['title']).'"></a>';
echo '<span class="kisstitle">'.stripslashes($row['title']).'</span><br>';
echo ' (';
echo $row['date'];
echo ')';
echo '<br>';
echo '<br>';
if((preg_match ("/\bjpg\b/",$row['media1'])) || (preg_match ("/\bjpeg\b/",$row['media1'])) || (preg_match ("/\bpng\b/i",$row['media1'])) || (preg_match ("/\bgif\b/i",$row['media1']))){
echo '<img style="max-width:300px;" src="media/news/'.$row['media1'].'" class="floatLeftClear" id="border">';
}
if((preg_match ("/\bjpg\b/",$row['media2'])) || (preg_match ("/\bjpeg\b/",$row['media2'])) || (preg_match ("/\bpng\b/i",$row['media2'])) || (preg_match ("/\bgif\b/i",$row['media2']))){
echo '<img style="max-width:300px;" src="media/news/'.$row['media2'].'" class="floatLeftClear" id="border">';
}
if((preg_match ("/\bmp3\b/", $row['media1']))) {
echo ' <p id="audioplayer_'.$number1.'" class="floatLeftClear">Media Content</p>
<script type="text/javascript">
AudioPlayer.embed("audioplayer_'.$number1.'", {soundFile: "http://kiddiessupportscheme.org/media/news/'.$row['media1'].'"});
</script>';
echo '<br>';
}
if((preg_match ("/\bmp3\b/", $row['media2']))) {
echo ' <p id="audioplayer_'.$number2.'" class="floatLeftClear">Media Content</p>
<script type="text/javascript">
AudioPlayer.embed("audioplayer_'.$number2.'", {soundFile: "http://kiddiessupportscheme.org/media/news/'.$row['media2'].'"});
</script>';
echo '<br>';
}
echo stripslashes(nl2br($row['text']));
echo '<br><br>';
echo stripslashes($row['author']);
echo '</div>';
echo '<p align="right" id="seperater"><a href="index2.php?op=News#top">Top</a><img src="images/seperater.jpg" width="950" height="6" style="border:none;" /></p>';
}
$number1++;
$number1++;
$number1++;
$number2++;
$number2++;
$number2++;
$counter++;
}}
감사를 사라. 훌륭한 응답! 거의 모든 것이 이제 한 가지를 제외하고는 모두 수정되었습니다. 링크 뒤에는 항상
이 있습니다 (내 말은 사이트에서 확인하십시오). 이것은 $ s를 nl2br ($ row [ 'news'])로 설정하고 데이터베이스 항목의 각 링크 뒤에 줄 바꿈이 있기 때문에 발생했다고 생각합니다. 이 주변에 어쨌든 있습니까? – nutman
nl2br()을 사용하지 않고 솔루션을 사용해 보셨습니까? 오류가 발생 했습니까? –
나는 그것을 시도했다. 그러나 뉴스 포스트는 저자가 자신의 게시물에 단락을 넣었을 수 있으므로 nl2br을 가져야합니다. 스크립트가 url을 하이퍼 링크로 찾으면 url의 끝 부분에 도달하고 nl2br은 URL 바로 뒤에
을 삽입하고 링크의 끝에 추가하기 때문에 발생한다고 생각합니다. URL 뒤에 여분의 공간이 있어야합니다. 어떻게 든 들어갈 수 있을까요? – nutman