簡體   English   中英

在php變量中從sql數據庫添加多個列值(不使用inhtml復選框名稱的數組名稱)

[英]Adding multiple columns values from sql database in a php variable (without using an array name inhtml checkbox tag)

$queryStoreSecondaryInfo = $connection->query($sqlStoreSecondaryInfo);

if( $queryStoreSecondaryInfo ){
    echo "<br />Updated Secondary! <br />";
    $sqlUpdatedSecondaryInfo = " SELECT * FROM students_skills 
                                 WHERE ID='$_SESSION[ID]'  
                                 AND Email='$Email' ";
    $queryUpdatedSecondaryInfo = $connection->query($sqlUpdatedSecondaryInfo);
    while( $row = $queryUpdatedSecondaryInfo->fetch_assoc() ){
        $_SESSION["Landscaping"] = $row["Landscaping"];
        $_SESSION["Cleaning"] = $row["Cleaning"];
        $_SESSION["Delivery"] = $row["Delivery"];
        $_SESSION["Music"] = $row["Music"];
        $_SESSION["Maintenance"] = $row["Maintenance"];
        $_SESSION["Decoration"] = $row["Decoration"];
        $_SESSION["Painting"] = $row["Painting"];
        $_SESSION["PetCare"] = $row["PetCare"];
        $_SESSION["Tutoring"] = $row["Tutoring"];
        $_SESSION["Vehicles"] = $row["Vehicles"];
        $_SESSION["SnowRemoval"] = $row["SnowRemoval"];
        $_SESSION["Other"] = $row["Other"];

        foreach( $row as $skill => $value ){
            $postSkills=array();
            if( $value == "1" ){

                //if statement is true, add all column header names, 
                //ie. $skill values, together, and store in a variable, eg. $postSkills

            }
            echo $postSkills;
        }
    }
}

SESSION值來自多個復選框。 我想用字符串將所有名稱連在一起,並將其存儲為會話變量。 我看到了其他解決方案,到處都可以將復選框的名稱設置為“ name ='array []'”,但是由於數據庫的設置方式,我必須為每個復選框指定一個唯一的名稱。無論如何,是否可以將所有列標題名稱合並在一起,而無需創建單獨的數據庫來將全部技能列表存儲在一起?

謝謝!

不要將$ postSkills設置為數組,而應將其設置為字符串。 通過用'|'分隔技能來存儲技能

               $queryStoreSecondaryInfo = $connection->query($sqlStoreSecondaryInfo);

               if( $queryStoreSecondaryInfo ){
                   echo "<br />Updated Secondary! <br />";
                   $sqlUpdatedSecondaryInfo = " SELECT * FROM students_skills 
                                                WHERE ID='$_SESSION[ID]'  
                                                AND Email='$Email' ";
                   $queryUpdatedSecondaryInfo = $connection->query($sqlUpdatedSecondaryInfo);
                   while( $row = $queryUpdatedSecondaryInfo->fetch_assoc() ){
                       $_SESSION["Landscaping"] = $row["Landscaping"];
                       $_SESSION["Cleaning"] = $row["Cleaning"];
                       $_SESSION["Delivery"] = $row["Delivery"];
                       $_SESSION["Music"] = $row["Music"];
                       $_SESSION["Maintenance"] = $row["Maintenance"];
                       $_SESSION["Decoration"] = $row["Decoration"];
                       $_SESSION["Painting"] = $row["Painting"];
                       $_SESSION["PetCare"] = $row["PetCare"];
                       $_SESSION["Tutoring"] = $row["Tutoring"];
                       $_SESSION["Vehicles"] = $row["Vehicles"];
                       $_SESSION["SnowRemoval"] = $row["SnowRemoval"];
                       $_SESSION["Other"] = $row["Other"];

                       foreach( $row as $skill => $value ){
                           $postSkills="";
                           if( $value == "1" ){

                               //if statement is true, add all column header names, 
                               //ie. $skill values, together, and store in a variable, eg. $postSkills

                               $postSkills .= "$skill|";

                           }
                           if($postSkills!="") {
                               $postSkills = substr($postSkills,0,-1);
                           }
                           echo $postSkills;
                       }
                   }
               } 

現在$ postSkills將包含所有值為1的技能的名稱。類似這樣的東西-

$postSkills = "Landscaping|Cleaning|Decoration|Vehicles";

為了從中設置會話變量,您需要-

    $skillsArr = explode("|", $postSkills);

    foreach($skillsArr as $skill) {
        $_SESSION["$skill"] = 1;
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM