היי לכולם, הודעה ראשונה כאן, מפתח בדרופל פחות משבועיים.. בכל מקרה: אני צריך לתכנת קריאה ל- stored procedure בעמוד הפרופיל של המשתמש. בגדול, למשוך שורה של נתונים מהדאטאבייס שכוללת שם משתמש/ססמא/סיריאל שקשורים לתוכנה שאותה האתר משווק.
מה עשיתי עד כה: יצרתי כפתור generate:
http://gyazo.com/510b48b859fe8601b8224d0578315813 ---שאין מאחוריו עוד כלום והוא גם במקום הלא נכון- לא בתוך פרופיל המשתמש אלא בנוד נפרד.
מצאתי דוגמא של סקריפט לקריאה ל-stored procedure :
<?php
$stored_procedure_query = "EXECUTE DATABASE.DBO.TABLENAME :PARAMETER1,:PARAMETER2";
/** YOU CAN FETCH THE DATA DIRECTLY USING FETCHOBJECT EXAMPLE**/
$stored_procedure_result = db_query($stored_procedure_query,array(':PARAMETER1' => $parameter1_value, ':PARAMETER2'=>$parameter2_value)->fetchObject();
/** OR YOU CAN FETCH IT BY ROW **/
$stored_procedure_result = db_query($stored_procedure_query,array(':PARAMETER1' => $parameter1_value, ':PARAMETER2'=>$parameter2_value);
$rows = NULL;
foreach(stored_procedure_result as $result){
$row = array();
$row[] = $result->field1;
$row[] = $result->field2;
$row[] = $result->field3;
$rows[] = $row;
}
$header = array(
'column_1' => t('FIELD 1'),
'column_2' => t('FIELD 2'),
'column_3' => t('FIELD 3'),
);
/** THEN DISPLAY IT IN A TABLE **/
$form['name'] = array(
'#theme' => 'table',
'#caption' => t('TABLE CAPTION'),
'#header' => $header,
'#rows' => $rows,
'#empty' => t('NO DATA FOUND.'),
);
?>
http://pastebin.com/J0UKFAtB
ניסיתי להטמיע אותו בתוך הנוד- אבל קיבלתי :parse error
Parse error: syntax error, unexpected T_OBJECT_OPERATOR
על רוב הקוד- מגוגל הבנתי שמדובר כנראה בגרסת ה-php שלי למרות שהיא עומדת על 5.2. אחד הפתרונות היו לקרוא לסקריפט מתוך הנוד בלי להטמיע את הקוד בתוכו, נגיד דרך יצירת מודול- עשיתי את זה, אבל האתר קורס עם אותה שגיאת פארס. לקרוא לקובץ php מתוך נוד אין לי מושג איך לעשות.