דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. הוספת עוד חלק קוד html ו PHP דינמי.

הוספת עוד חלק קוד html ו PHP דינמי.

מתוזמן נעוץ נעול הועבר תכנות
25 פוסטים 3 כותבים 610 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • G מנותק
    G מנותק
    GOOGL
    השיב לdovid ב נערך לאחרונה על ידי
    #11

    @dovid
    תודה רבה על ההסבר הברור!
    לגבי השאלה השניה אז:
    דוגמא למה שמופיע בקובץ INI לאחר שליחה של הטופס בפעם הראשונה:

    Form_num = 1
    First_name = Israel
    Last_name = Israeli
    

    דוגמא לשליפת הערכים מ INI:

    <?php
    $fname = $lname = $Form_num = "";
    if (empty($_POST["fname"])) { 
    } else {
        $fname = $_POST["fname"];
    }
    if (empty($_POST["lname"])) {
    } else {
        $lname = $_POST["lname"];
    }
    
    if (empty($_POST["Form number"])) {
    } else {
        $Form_num = $_POST["Form number"];
    }
    
    $ini_array = parse_ini_file("Names.ini");
    $Form_num_ini = $ini_array['Form_num'];
    $First_name_ini = $ini_array['First_name'];
    $Last_name_ini = $ini_array['Last_name'];
    
    ?>
    
    <html>
    <body>
    
    <?php if ($_POST["show_form"]) : ?>
            <form action="">
                <label for="Form number">Form number:</label><br>
                <input type="text" id="Form number" name="Form number" value="<?php echo $Form_num; ?>"><br>
                <label for="fname">First name:</label><br>
                <input type="text" id="fname" name="fname" value="<?php echo $fname; ?>"><br>
                <label for="lname">Last name:</label><br>
                <input type="text" id="lname" name="lname" value="<?php echo $lname; ?>"><br><br>
                <input type="submit" value="Submit">
            </form>
        <?php else : ?>
            <form method="POST">
                <input type="hidden" value="show_form" />
                <button type="submit">הצג טופס</button>
            </from>
        <?php endif; ?>
    
    </body>
    </html>
    

    האם לדוגמא ככה זה יהיה נכון להציג דף שונה לפי המידע שנטען?

    <body>
    
    <?php if ($Form_num_ini == 1) : ?>
            <p>Form number:<?php echo $Form_num; ?></p><br>
            <p>First name:<?php echo $fname; ?></p><br> 
            <p>Last name:<?php echo $lname; ?></p>   
        <?php else : ?>
        <?php endif; ?>
    
    </body>
    

    רק שאם יש לי 10 טפסים אני צריך אולי להריץ ללואה...

    dovidD תגובה 1 תגובה אחרונה
    0
    • dovidD מחובר
      dovidD מחובר
      dovid ניהול
      השיב לGOOGL ב נערך לאחרונה על ידי
      #12

      @GOOGL צודק.
      יש הרבה טכניקות לעשות את זה אלגנטי,
      אבל אם תלמד JS יהיה לך הרבה יותר קל.

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      G תגובה 1 תגובה אחרונה
      3
      • G מנותק
        G מנותק
        GOOGL
        השיב לdovid ב נערך לאחרונה על ידי
        #13

        @dovid
        נכון, הדוגמא שהבאת מקודם ב JS הרבה יותר טובה כי היא פשוטה ולא מרעננת את הדף.
        האם יש דוגמא דומה גם במקרה הזה ב JS?

        dovidD תגובה 1 תגובה אחרונה
        0
        • dovidD מחובר
          dovidD מחובר
          dovid ניהול
          השיב לGOOGL ב נערך לאחרונה על ידי
          #14

          @GOOGL האמת שלא קראתי טוב מה שכתבת, דוקא במקרה הזה אין ייתרון משמעותי לJS.
          בכל מקרה, אני מציע לעשות תיקיה בשרת, לקרוא לה נגיד forms, בתוכה שים קבצים עם שמות שתוכל לשלוף לפי הINI, למשל 1.php וכן הלאה.
          בכל קובץ מהם שים טופס, למשל 1.php ייראה ככה:

              <form action="">
                  <label for="Form number">Form number:</label><br>
                  <input type="text" id="Form number" name="Form number" value="<?php echo $Form_num; ?>"><br>
                  <label for="fname">First name:</label><br>
                  <input type="text" id="fname" name="fname" value="<?php echo $fname; ?>"><br>
                  <label for="lname">Last name:</label><br>
                  <input type="text" id="lname" name="lname" value="<?php echo $lname; ?>"><br><br>
                  <input type="submit" value="Submit">
              </form>
          

          בדף הראשי (עליו עבדת עד עכשיו) תכתוב כזה קוד:

          <?php
          $fname = $lname = $Form_num = "";
          if (empty($_POST["fname"])) { 
          } else {
              $fname = $_POST["fname"];
          }
          if (empty($_POST["lname"])) {
          } else {
              $lname = $_POST["lname"];
          }
          
          if (empty($_POST["Form number"])) {
          } else {
              $Form_num = $_POST["Form number"];
          }
          
          $ini_array = parse_ini_file("Names.ini");
          $Form_num_ini = $ini_array['Form_num'];
          $First_name_ini = $ini_array['First_name'];
          $Last_name_ini = $ini_array['Last_name'];
          
          
          include("forms/$Form_num_ini.php");
          

          יש לציין שיש בדרך הזו בעיית אבטחה מסויימת, אבל קודם תבדוק שזה עונה על צרכיך.

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          G תגובה 1 תגובה אחרונה
          1
          • G מנותק
            G מנותק
            GOOGL
            השיב לdovid ב נערך לאחרונה על ידי
            #15

            @dovid
            אוקי, אבל זה חייב לבוא יחד עם ללואה, לא?

            <?php 
            $a = 1;
            while ($Form_num_ini >= $a) {
                include("forms/$a.php");
                $a ++;
            }
            ?>
            
            dovidD תגובה 1 תגובה אחרונה
            0
            • dovidD מחובר
              dovidD מחובר
              dovid ניהול
              השיב לGOOGL ב נערך לאחרונה על ידי dovid
              #16

              @GOOGL אני הנחתי ש$Form_num_ini מכיל מספר שהוא מתייחס לטופס בודד (למשל 5 = טופס מס' 5).
              אם ההנחה שלי נכונה אין שום טעם פה בלולאה.

              מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

              בכל נושא אפשר ליצור קשר dovid@tchumim.com

              G תגובה 1 תגובה אחרונה
              0
              • G מנותק
                G מנותק
                GOOGL
                השיב לdovid ב נערך לאחרונה על ידי GOOGL
                #17

                @dovid
                לפי איך שאני מביןinclude("forms/$Form_num_ini.php"); יציג רק טופס אחד,

                אבל מה עם יש לי 2 טפסים שמולאו וקובץ ה INI נראה ככה:

                [Form_num = 1]
                First_name = Israel
                Last_name = Israeli
                
                [Form_num = 2]
                First_name = Sarah
                Last_name = Cohen
                
                
                dovidD תגובה 1 תגובה אחרונה
                0
                • dovidD מחובר
                  dovidD מחובר
                  dovid ניהול
                  השיב לGOOGL ב נערך לאחרונה על ידי
                  #18

                  @GOOGL סוף סוף אתה מואיל לחשוף טפח מסודות הגרעין... תנסה להיות יותר שקוף ולתת יותר מידע.
                  ואתה רוצה בדף אחד להציג למשתמש את כל הטפסים שבקובץ עם כל הערכים המתאימים?
                  אני חשבתי שאתה רוצה לפי קריטריונים לשלוף טופס מסויים.
                  בקיצור תגיד מה בסוף אתה רוצה שיוצג למשתמש לפי הini האחרון שהראת.

                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

                  G תגובה 1 תגובה אחרונה
                  2
                  • G מנותק
                    G מנותק
                    GOOGL
                    השיב לdovid ב נערך לאחרונה על ידי GOOGL
                    #19

                    @dovid אמר בהוספת עוד חלק קוד html ו PHP דינמי.:

                    @GOOGL סוף סוף אתה מואיל לחשוף טפח מסודות הגרעין...

                    מתנצל, לא התכוונתי להסתיר, חשבתי שאני ברור.

                    בקיצור תגיד מה בסוף אתה רוצה שיוצג למשתמש לפי הini האחרון שהראת

                    נגיד שיש לי 2 קבצי INI אחד בשם Form_num_1.INI והשני בשם Form_num_2.INI

                    ב Form_num_1.INI יש :

                    First_name = Israel
                    Last_name = Israeli
                    

                    וב Form_num_2.INI יש :

                    First_name = Sarah
                    Last_name = Cohen
                    

                    ואני רוצה שזה יוצג ככה:
                    First name:Israel
                    Last name:Israeli
                    First name:Sarah
                    Last name:Cohen

                    dovidD תגובה 1 תגובה אחרונה
                    0
                    • dovidD מחובר
                      dovidD מחובר
                      dovid ניהול
                      השיב לGOOGL ב נערך לאחרונה על ידי
                      #20

                      @GOOGL בהודעה הראשונה שלך היה נראה שאתה רוצה לתת טופס HTML שונה לפי מידע מסויים.
                      כעת אני מבין שאתה רוצה להציג בדף אחד, טופס שחוזר על עצמו על כל קובץ INI עם הערכים המתאימים בכל אחד.
                      ההבנה האחרונה נכונה?

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      G תגובה 1 תגובה אחרונה
                      0
                      • G מנותק
                        G מנותק
                        GOOGL
                        השיב לdovid ב נערך לאחרונה על ידי
                        #21

                        @dovid
                        בדיוק!

                        dovidD תגובה 1 תגובה אחרונה
                        0
                        • dovidD מחובר
                          dovidD מחובר
                          dovid ניהול
                          השיב לGOOGL ב נערך לאחרונה על ידי
                          #22

                          @GOOGL נסה את הקוד הבא:

                          <?php
                          
                          $ini_array = parse_ini_file("Names.ini", true);
                          
                          ?>
                          
                          <html>
                          
                          <body>
                          
                              <?php
                              foreach ($ini_array as $key => $data) {
                              ?>
                          
                                  <form>
                                      <label for="Form number">Form number:</label><br>
                                      <input type="text" id="Form number" name="Form number" value="<?php echo $key; ?>"><br>
                                      <label for="fname">First name:</label><br>
                                      <input type="text" id="fname" name="fname" value="<?php echo $data["fname"]; ?>"><br>
                                      <label for="lname">Last name:</label><br>
                                      <input type="text" id="lname" name="lname" value="<?php echo $data["lname"]; ?>"><br><br>
                                      <input type="submit" value="Submit">
                                  </form>
                                  <hr style="margin-bottom: 20px;">
                              <?php
                              }
                              ?>
                          </body>
                          
                          </html>
                          

                          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                          בכל נושא אפשר ליצור קשר dovid@tchumim.com

                          G תגובה 1 תגובה אחרונה
                          0
                          • G מנותק
                            G מנותק
                            GOOGL
                            השיב לdovid ב נערך לאחרונה על ידי GOOGL
                            #23

                            @dovid
                            אם אני מבין נכון, הקוד הזה טוב למקרה של קובץ INI שיש בו מערך עם שני מפתחות.
                            השאלה שלי אם יש לי שני קבצי INI ובכל אחד מערך אחד, מהי הדרך הנכונה להציג אותם.

                            (סליחה על התגובה המאוחרת היו לי כמה תקלות רציניות בקוד).

                            dovidD תגובה 1 תגובה אחרונה
                            0
                            • dovidD מחובר
                              dovidD מחובר
                              dovid ניהול
                              השיב לGOOGL ב נערך לאחרונה על ידי dovid
                              #24

                              @GOOGL הקוד שלי יועד למקרה הזה

                              [Form_num = 1]
                              First_name = Israel
                              Last_name = Israeli
                              
                              [Form_num = 2]
                              First_name = Sarah
                              Last_name = Cohen
                              
                              

                              שזה קובץ בודד אבל מרובה מקטעים (section).
                              אני מנסה להבין את המקרה שלך מתחילת השרשור,
                              ובשלב זה התייאשתי לרדוף אחריך.
                              אני כעת מבין שיש כמה קבצים ובכל קובץ כמה מקטעים.
                              אני לא יודע האם אתה תמיד רוצה את כל הקבצים או אתה רוצה בורר מסויים, ולפי מה הוא.
                              אני כבר לא יענה לך, אבל מקוה שאחרים כן.

                              מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                              בכל נושא אפשר ליצור קשר dovid@tchumim.com

                              G תגובה 1 תגובה אחרונה
                              1
                              • G מנותק
                                G מנותק
                                GOOGL
                                השיב לdovid ב נערך לאחרונה על ידי
                                #25

                                @dovid
                                אני חושב שהסברתי פה בדיוק את זה.
                                בכל אופן אני מאוד מאוד מודה לך על העזרה, אתה אדם מדהים!

                                תגובה 1 תגובה אחרונה
                                1
                                • dovidD dovid העביר נושא זה מ-תכנות ב-

                                • 1
                                • 2
                                בא תתחבר לדף היומי!
                                • התחברות

                                • אין לך חשבון עדיין? הרשמה

                                • התחברו או הירשמו כדי לחפש.
                                • פוסט ראשון
                                  פוסט אחרון
                                0
                                • דף הבית
                                • קטגוריות
                                • פוסטים אחרונים
                                • משתמשים
                                • חיפוש
                                • חוקי הפורום