ABA


"עזרה בבניית סקריפט מבזקים (PHP)"
גירסת הדפסה        
קבוצות דיון בניית אתרים נושא #11877 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 11877
TheVirus

   01:27   11.04.07   
אל הפורום  
  עזרה בבניית סקריפט מבזקים (PHP)  
 
   ערכתי לאחרונה בתאריך 11.04.07 בשעה 01:30 בברכה, TheVirus
 
זהו סקריפט הוספת המבזקים שנשמרים לnews.txt-(כל מבזק נשמר בשורה משלו):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html dir="RTL">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
<head>
<title></title>
</head>
<body dir="rtl">
<p align="center"><u><font face="Arial" size="5"><strong>הוספת
מבזק<br><br>
</strong></font></u></p>
<br>
<form method="POST" action="scroll.php">
כותרת המבזק:<input type="text" name="nline" >
<br>
תוכן המבזק:<textarea name="nbody" rows="6">
<input type="hidden" name="ayuni" value="true"><br>
<input type="submit" value="שלח">
</form>

</body>
</html>

<?
if (isset($_POST['ayuni'])) {
$nline = $_POST['nline'];
$nbody = $_POST['nbody'];
$date1 = date("d.m.y");
$date2 = date("H:i:s");
$date .= $date1 . $date2;
$break = "|";
$tab = "\n";
$fp = fopen("news.txt", "a");
$output .= $tab . $nbody . $break . $nline . $break . $date;
fwrite($fp,$output);
fclose($fp);
}
?>


וזה הסקריפט שבונה את עמוד ההצגה של הרולר שמציג את התאריך+כותרת מבזק(ללא התוכן):

<?php

$f=file("news.txt");
$lines=array();
foreach($f as $line_num => $line)
$lines[$line_num+1]=$line;
$to=count($lines);
?>

<html dir="rtl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
<BODY leftmargin="0" marginwidth="0" topmargin="0">
<style>
B{
text-align:center;
color:red;
font-size:70%;
font-family:arial;}

Em{
text-align:center;
font-style:normal;
color:black;
font-size:80%;
font-family:arial;}
</style>

<?
for ($i=1; $i<=$to; $i++)
{
$a=explode("|",$lines[$i]);
?>
<table bordercolor="#ece9d8" cellspacing="0" cellpadding="0" width="190" bgcolor="#ffffff" border="0">
<tr valign="top"><td>
<p align="center"><B> <?= $a[2]; ?></B> </td></tr>
<tr><td><p align="center"><em><?= $a[1]; ?> </em></p></td></tr></table></div><br>

<?
}
?>


עכשיו אני רוצה להוסיף אפשרות שלחיצה על מבזק יפתח רק את התוכן בדף חדש.
מה שאני צריך זה סקריפט שידע להציג לי את התוכן המבוקש לפי ID (show.php?view=1). התחלתי לבנות את הסקריפט אבל התסבכתי בקטע של הוצאת מבזק ספציפי לקלט.

תודה מראש לעוזרים


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  אם היית עובד כמו בן אדם עם מסד נתונים akoka 11.04.07 01:43 1
     תודה. אתה יכול לעזור לי בעניין השליפה? TheVirus 11.04.07 07:29 2
  ? TheVirus 11.04.07 17:34 3
     אני לא יודע איך אתה עובד אז אני לא יכול לעשות לך את זה akoka 11.04.07 18:12 4
         זה לא חכם כל כך לעשות את זה על קובץ TEXT bmaorlo  11.04.07 19:27 5
  אממ תעשה ככה: MeToR 13.04.07 12:24 6
     תודה רבה. הוא נותן לי שגיאה TheVirus 13.04.07 15:31 7
         חחח טעות שלי... MeToR 13.04.07 19:43 8

       
akoka

   01:43   11.04.07   
אל הפורום  
  1. אם היית עובד כמו בן אדם עם מסד נתונים  
בתגובה להודעה מספר 0
 
   זה היה יותר פשוט אני ייתן לך את הדרך

1.תוסיף id לכול מבזק בקובץ טקסט
2.תשלוף את הid
3.תוסיף נתון hidden שקוראים לו value בדף של הלינקים והוא שולח איתו את הid לשליפה לshow.php משם זה קלי קלות


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheVirus

   07:29   11.04.07   
אל הפורום  
  2. תודה. אתה יכול לעזור לי בעניין השליפה?  
בתגובה להודעה מספר 1
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheVirus

   17:34   11.04.07   
אל הפורום  
  3. ?  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   18:12   11.04.07   
אל הפורום  
  4. אני לא יודע איך אתה עובד אז אני לא יכול לעשות לך את זה  
בתגובה להודעה מספר 3
 
   מה שכן אני מסביר לך להוסיף id לאחר מכן לחפש את הid בקובץ ולפיו לשלוף את מה שאתה רוצה באותה שורה זה הכי פשוט שיש


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   19:27   11.04.07   
אל הפורום  
  5. זה לא חכם כל כך לעשות את זה על קובץ TEXT  
בתגובה להודעה מספר 4
 
   כי במקרה הכי גרוע אתה עובר על כל השורות .


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MeToR
חבר מתאריך 26.1.07
11 הודעות
   12:24   13.04.07   
אל הפורום  
  6. אממ תעשה ככה:  
בתגובה להודעה מספר 0
 
   כשאתה מציג את הכותרות והתאריכים, תציג את הכותרת בלינק, ככה:

<a href="show.php?view=<?=$i;?>"> <?= $a[1]; ?> </a>

ובדף show.php תעשה ככה:


<?php
if (isset($_GET['view']))
{
$id=$_GET['view'];
$f=file("news.txt");
$lines=array();

foreach($f as $line_num => $line)
{
$lines[$line_num+1]=$line;
if (($line_num+1)=$id))
break;
}

$a = explode(" | ", $lines[$id]);
echo $a[0];
}
?>

לא בדקתי את זה... אז אם משהו לא עובד, תגיד לי.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
TheVirus

   15:31   13.04.07   
אל הפורום  
  7. תודה רבה. הוא נותן לי שגיאה  
בתגובה להודעה מספר 6
 
   syntax error, unexpected '=' on line 11
לא רואה משהו לא בסדר..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MeToR
חבר מתאריך 26.1.07
11 הודעות
   19:43   13.04.07   
אל הפורום  
  8. חחח טעות שלי...  
בתגובה להודעה מספר 7
 
   במקום זה:

if (($line_num+1)=$id))

תכתוב את זה:

if (($line_num+1)==$id))

פשוט צריך == ולא = .


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net