Jump to content
php.lv forumi

Vērtību pārsūtīšana starp PHP un Javascript


Riki

Recommended Posts

Zinu, ka starp tiem mainīgo vērtības nevar nosūtīt, bet varbūt tomēr ir kāda izeja?

 

Ir man datubāze, kur vienā tabulā ir User_id, bet citā tabulā User_name.

Ir forma, kur lietojs ievada User_name un vēl visu citu privātziņas nosūtīšanai citam jūzerim. Pēc User_name ievadīšanas vajag izsaukt skriptu, kas atrod attiecīgi User_id no datubāzes:

 

echo "<input type='hidden' name='user_id' />";

echo "<input type='text' onchange='java script:userIDpieskirt(".atrastid(te vajag nosūtīt user_name vērtību ).");' name='user_name' />";

 

 

Pirms tam ir izveidotas funkacijas:

echo "<script language=\"javascript\">\n";

echo "<!--\n";

echo "function userIDpieskirt(r_uid) {\n";

echo "document.coolsus.user_id.value = r_uid;\n";

echo "}\n";

echo "-->\n";

echo "</script>\n";

 

 

function atrastid($lietotaja_vards)

{

 

$xoopsDB =& Database::getInstance();

$resultats = $xoopsDB->query("SELECT uid FROM ".$xoopsDB->prefix("users")." WHERE uname = '". userIDnoteikt() ."'");

$rinda = ($xoopsDB->fetchRow($resultats));

$rinda2=$rinda[0];

settype ($rinda2, string);

return $rinda2;

}

 

 

Mēģināju 2 variantus: 1) funkcijai "atrastid" nodot vērtību $lietotaja_vards. Tas nestrādā, jo nevar nodot vērtību ar php kamēr, nav izpildīts submit.

2) select komantā WHERE= norādīt Javascript funkciju userIDnoteikt. Tas nestrādā, jo nevar nekādi iegūt Javascripta atgriezto vērtību.

 

Rezultātā sēžu jau 3. dienu pie dažām rindiņām. ;((

Link to comment
Share on other sites

1. Mēģināju gan pie onblur, gan pie onchange. Šajā gadījumā tas nemaina lietas būtību.

2. Pirms submita man to vajag apstrādāt tāpēc, ka tas viss ir iekļauts jau gatavā lielā CMS sistēmā, un pēc submita tiek izsauktas gatavās funkcijas no šīs sistēmas kodola, kurām vēl neesmu pilnībā izurbies cauri, un ko arī negribu mainīt, jo šīs funcijas izsaucas daudzās vietās.

Link to comment
Share on other sites

×
×
  • Create New...