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

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

לשלוח מייל אחרי קבלת התגובה מהשרת - PHP

מתוזמן נעוץ נעול הועבר תכנות
8 פוסטים 4 כותבים 68 צפיות
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ש מנותק
    ש מנותק
    ש.ב.ח.
    כתב ב נערך לאחרונה על ידי
    #1

    אני שולח מהקלינט בקשה שמחזירה json
    לאחר קבלת התגובה אני מעוניין שלישח מייל כל שהוא

    שמתי לב ששליחת מייל לוקחת הרבה יותר זמן
    מה שבעצם מעכב את קבלת התשובה לקלינט ופוגע בתצוגה.

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

    או שיש דרך להחזיר תגובה לקלינט (סטטוס 200) ולהמשיך את הסקריפט?

    אשמח לתגובתכם

    תגובה 1 תגובה אחרונה
    0
  • dovidD מנותק
    dovidD מנותק
    dovid ניהול
    כתב ב נערך לאחרונה על ידי dovid
    #2

    זה ברור שאפשר, אבל בPHP דברים כאלה נחשבים מעט לטריקיים.
    https://stackoverflow.com/a/15273676/1271037
    תשחק עם זה עד שזה ישביע רצון. אם יש בעיות שים לב להצעות בהערות הפופולריות של התשובה.

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

    nigunN תגובה 1 תגובה אחרונה
    2
  • nigunN מנותק
    nigunN מנותק
    nigun
    השיב לdovid ב נערך לאחרונה על ידי nigun
    #3

    אפשר גם לקרוא לסקריפט נוסף עם exec.

    מייל: nigun@duck.com

    ש תגובה 1 תגובה אחרונה
    1
  • ש מנותק
    ש מנותק
    ש.ב.ח.
    השיב לnigun ב נערך לאחרונה על ידי
    #4

    @nigun תרחיב.. בבקשה

    nigunN תגובה 1 תגובה אחרונה
    0
  • nigunN מנותק
    nigunN מנותק
    nigun
    השיב לש.ב.ח. ב נערך לאחרונה על ידי
    #5

    @ש-ב-ח
    אפשר להפעיל קובץ PHP גם משורת הפקודה

    php -e ./foo.php
    

    אפשר להפעיל כל פקודה מתוך הקובץ PHP
    למשל

    shell_exec(ls /home);
    

    ואם רוצים להפעיל פקודה בלי לחכות לפלט
    אפשר להוסיף & בסוף הפקודה
    (זה עובד גם מהטרמינל)
    כל מה שנשאר לעשות זה להפעיל קובץ PHP מתוך exec

    
     $shell_command = "  php -e ./foo.php >> logFoo.txt & ";
    
                shell_exec($shell_command);
    

    בדוגמה הנ"ל הפנתי את כל הפלט לlogFoo.txt
    בשביל לדבג במקרה הצורך
    אמנם עכשיו יש בעיה במקרה שצריך להעביר משתנים בGET או POST
    לסקריפט foo.php .
    כתבתי בעבר איזה סקירפט שמעביר את כל הסטרינג שהתקבל בGET
    למשתני env
    אולי אני יסדר את זה קצת ויעלה לכאן

    מייל: nigun@duck.com

    ש תגובה 1 תגובה אחרונה
    4
  • ש מנותק
    ש מנותק
    ש.ב.ח.
    השיב לnigun ב נערך לאחרונה על ידי
    #6

    @nigun אמר בלשלוח מייל אחרי קבלת התגובה מהשרת - PHP:

    אולי אני יסדר את זה קצת ויעלה לכאן

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

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

    תודה מראש.

    nigunN תגובה 1 תגובה אחרונה
    0
  • nigunN מנותק
    nigunN מנותק
    nigun
    השיב לש.ב.ח. ב נערך לאחרונה על ידי
    #7

    @ש-ב-ח
    הנה משהוא שבניתי פעם בשביל קבל טוקן כל שהוא
    למערכת בימות המשיח
    המאזין נכנס לשלוחה ומופנה מידית לשלוחה הבאה
    ובנתיים המערכת יוצרת עבורו טוקן ושומרת במסד נתונים

    <?php
    $go_to_folder=$_GET['go_to_folder'];
    
    foreach($_GET as $k => $v)
    {
        $get .= $k . '=' . $v . '^';
    }
    
    $get2= htmlspecialchars($get, ENT_QUOTES, 'UTF-8');
    
     $shell_command = " export QUERY_STRING=\" $get2 \" ; php -e ./token.php >> 155.txt & ";
    
                shell_exec($shell_command);
           print "go_to_folder=$go_to_folder";
    
    ?>
    

    וב token.php

    <?php
    $get2=$_SERVER['QUERY_STRING'];
    
    $get2 = str_replace("^","&",$get2);
    parse_str($get2, $_GET);
    extract($_GET);
    

    וכך כל המשתנים עברו לtoken.php
    יכול להיות שאפשר להעביר את זה בדרכים יותר אלגנטיים, אבל זה הכיוון.

    מייל: nigun@duck.com

    WWWW תגובה 1 תגובה אחרונה
    1
  • WWWW מנותק
    WWWW מנותק
    WWW
    השיב לnigun ב נערך לאחרונה על ידי
    #8

    @nigun יש דרך פשוטה להעביר ארגומנטים.
    בשרת אינטרנט ניגשים לזה דרך $_GET וכדו'.
    ובCLI כותבים נתיב לקובץ רווח פרמטר 0 רווח פרמטר 1 וכו', ואז נגשים לזה: $argv[]

    /**
     *  @xglobal $argv array
     *
     * Array of arguments passed to script
     *
     * <p><a href="https://secure.php.net/manual/en/reserved.variables.php">
     * https://secure.php.net/manual/en/reserved.variables.php</a>
     */
    $argv = array();
    
    

    WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

    תגובה 1 תגובה אחרונה
    0

  • התחברות

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

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

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

  • התחברו או הירשמו כדי לחפש.