הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 21-05-10, 18:21   # 1
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

PHP CHECKBOX - נושא קצת מורכב ובעייתי

אני יושב על זה כמה שעות כבר ולא עולה לי לראש כלום,
יש לי את הקוד הבא:
HTML קוד:
		<td><input type="checkbox" name="permissions[]" value="1|" /> כללי</td>
		<td><input type="checkbox" name="permissions[]" value="2|" /> הגדרות אתר ושרת</td>
		<td><input type="checkbox" name="permissions[]" value="3|" /> הודעות ומשוב</td>
		<td><input type="checkbox" name="permissions[]" value="5|" /> כתבות</td>
אני רוצה לקבל את הנתונים בצורה הבאה "1|2|3|5|"
ניסיתי עם כל מיני דרכים, foreach, explode, implode, while
הצלחתי להשיג את הנתונים בצורה שאני רוצה
עם while ו foreach אבל לא הצלחתי להוציא אותם מחוץ ללולאות.
  Reply With Quote
ישן 21-05-10, 19:24   # 2
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

הסתדרתי, תודה.
  Reply With Quote
ישן 22-05-10, 09:51   # 3
Ori The Man
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: חיפה
גיל: 34
הודעות: 3,694
שלח הודעה באמצעות MSN אל Ori The Man Send a message via Skype™ to Ori The Man

Ori The Man לא מחובר  

תספר לכולם איך חחח,שאחרים שיתקלו בבעיה ידעו גם איך
  Reply With Quote
ישן 22-05-10, 10:35   # 4
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

PHP קוד:
    $per "";
    foreach (
$permissions as $key => $value) {
        
$per .= $value;
    } 

הגדרתי את המשתנה $per כריק, בשביל להשתמש בו בלולאה..
ביצעתי לולאה (foreach) על כל התיבות שהתקבלו בטופס ומכל אחד לקחתי את התוכן למשתנה $value
שמתי למשתנה per אופרטור נקודה כדי שיתן את כל הנתונים שהתקבלו
מהשדות טקסט ולא רק אחד .., מן הסתם הוא חיבר אותם ועשה אותם בצורה הזו "1|2|3|5|"..
וזהו בגדול, זה מה שעשיתי כדי להוציא את כל הנתונים .


--- מה שאני כותב עכשיו זה כבר משהו אחר ---
__________________________________________
אבל יש לי בעיה, לא הגעתי עדיין למה שאני צריך.
נניח שיש לי את המשתנה $per שהוא בעצם מערך,
איך אני יכול לבדוק אם מה שיש בו שווה לאחד מהערכים "1,2,3,5"
מבלי להשתמש בו בצורה הבאה:
PHP קוד:
$per['0'] == 1
$per
['1'] == 2
$per
['2'] == 3
$per
['3'] == 5
// אלא שיהיה ככה
$per == 2
$per 
== 1
$per 
== 
ש- $per יוכל להיות שווה לכל אחד מן הערכים שיש במערך (בתוכו) [1,2,3,5]..
מקווה שמישהו הבין אותי ויוכל לעזור לי, כי זה קצת מסובך להסביר את זה, אבל ניסיתי בצורה הכי טובה שאני יכול..
  Reply With Quote
ישן 22-05-10, 10:50   # 5
אדיר
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Mar 2008
מיקום: אשקלון
הודעות: 1,714

אדיר לא מחובר  

למה שלא תשאיר את מה שאתה מקבל כמערך ותבדוק אם הערך קיים שם ע"י in_array?‏↳‏
וד"א תוריד את הקווים האלה שם..
  Reply With Quote
ישן 22-05-10, 11:09   # 6
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

אני רוצה לבדוק אם יש למשתמש X הרשאות ל X, Y ו Z נגיד..
יש לי את הקוד הבא, שלוקח את המשתמש שמחובר ומוציא את ההרשאות שלו,
זה הקוד:
PHP קוד:
function getUserPer($id) {
    
$query mysql_query("SELECT permissions FROM admins WHERE id = '$id'");
        
$result mysql_fetch_assoc($query);
        
$permissions $result['permissions'];
    
$permissions explode("|"$permissions);

    return 
$permissions;
}
    
$id $_COOKIE['id'];
$per getUserPer($id); 
ההרשאות במסד שמורים בתבנית הבאה - "1|2|3|4|5|6|7|8|9|10"...
עכשיו אני רוצה לבדוק איזה הרשאות יש למשתמש המחובר ובהתאם להציג לו
את הפרטים שיש לו גישה אליהם ..


נ.ב
לגבי ה | (קווים האלה) ב- value של ה checkbox אני אוריד אותם
זה זמני, אני אשתמש ב implode אחר כך כדי להוסיף אותם לפני שהנתונים נכנסים למסד..
  Reply With Quote
ישן 22-05-10, 14:06   # 7
Itay
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 35
הודעות: 564

Itay לא מחובר  

כמו שאמרו פה - אתה יכול להשתמש ב-in_array
אבל לדעתי יותר פשוט ויחסוך לך קוד - פשוט תשתמש ב-strstr על הערך מהבסיס נתונים, בלי להפוך אותו למערך..
אתה יכול גם להשתמש ככה בתו שהכנסת לפני כדי לדעת שמדובר נגיד במספר 1 ולא במספר 10
  Reply With Quote
ישן 23-05-10, 15:43   # 8
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

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

למישהו יש רעיון איך להשוות נתונים ?
אם יש לי טבלה של משתמשים במסד, ויש בה שדה של הרשאות,
ההרשאות הם בתבנית הבאה "1|2|3|4|5|6|7|8|9|10"
לכל משתמש יש הרשאות שונות, זאת אומרת יכול להיות לאחד את כל ההרשאות
ולמשתמש אחר רק "1|2|3|4|5" או "1|2|5|7"...

מה שאני צריך לעשות, זה לבדוק אם יש לכל משתמש הרשאה X
לא הצלחתי ניסיתי עם כל מיני דרכים, גם לולאות כמו שכתבתי כבר..
בסך הכל צריך להשוות,
משהו בסגנון הזה
PHP קוד:
if ($per == 1) {
  echo 
"יש הרשאה 1";
}

if (
$per == 10) {
  echo 
"יש הרשאה 10";

למישהו יש רעיון איך לעשות את זה?, או איזה דרך מסויימת ..?
  Reply With Quote
ישן 23-05-10, 16:20   # 9
Itay
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 35
הודעות: 564

Itay לא מחובר  

PHP קוד:
if(strstr($prems$number."|"))
      echo 
$number." found"
לא יודע עם מה הסתבכת בדיוק.. אבל ככה בערך זה אמור להיות - כמובן יותר נוח לקרוא לזה דרך פונקציה אבל תעשה איך שנוח לך
  Reply With Quote
ישן 24-05-10, 12:15   # 10
SniR-S
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Aug 2008
הודעות: 546

SniR-S לא מחובר  

זה לא טוב עם strstr, אני יכול לבנות פונקציה שתבדוק אם יש פרמטר מסויים לפני או אחרי פרמטר אחר
אבל זה לא עוזר לי, כי לאחד יכול להיות הרשאות "1|2|3" ולאחר "2|5|9"..
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 17:02.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ