示例#1
0
文件: db.php 项目: p-mob2015/idea19
function fetchChoicesWithName($comboName)
{
    /*
    Fetch choices info from the database given the combo name
    PARAM:
    # comboName - name of the combo for which the choices are to be fetched
    RESULT:
    # array of ComboChoice objects
    */
    try {
        $a = Combochoice::find("all", array("conditions" => array("tblcombo.nameCombo=?", $comboName), "joins" => array("combo")));
    } catch (Exception $e) {
        echo 'Caught exception: ', $e->getMessage(), "\n";
    }
    return $a;
}
示例#2
0
function extractAndSave($comboName, $type = 1)
{
    /*
    Extract and Save choices of the combo/option
    PARAM:
    # comboName - name of the combo/option within the web page
    # type - 1 for combo, 2 for option
    RESULT:
    # none
    */
    $arrCombo = Combo::find('all', array('conditions' => array('nameCombo=? and levelCombo=1', $comboName)));
    if (count($arrCombo) == 0) {
        echo "! No such combobox named '{$comboName}' <br>";
        return;
    }
    $combo = $arrCombo[0];
    $combo_id = $combo->idcombo;
    // --1-- Found corresponding id of the combo named "$comboName"
    $arrChoices = array();
    if ($type == 1) {
        $arrChoices = extractComboChoices($comboName);
    } else {
        $arrChoices = extractOptionChoices($comboName);
    }
    // --2-- extracted choice array from remote site
    Combochoice::table()->delete(array('comboidcombochoice' => $combo_id));
    // --3-- cleaned up old choices data to avoid redundancy
    foreach ($arrChoices as $key => $text) {
        $objChoice = new Combochoice();
        $objChoice->comboidcombochoice = $combo_id;
        $objChoice->textcombochoice = $text;
        $objChoice->valuecombochoice = $key;
        $objChoice->save();
    }
    // --4-- saved extracted choice data into the database
    echo "### Successfully extracted choice information for ";
    echo $type == 1 ? "Combo" : "Option Group";
    echo " named \"{$comboName}\" <br>";
}