לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 30-07-2006, 16:56
  משתמש זכר iNfLuX iNfLuX אינו מחובר  
 
חבר מתאריך: 13.07.06
הודעות: 106
שלח הודעה דרך ICQ אל iNfLuX
שאילתת sql שומרת פעמיים את אותם נתונים בהרצה אחת

היי חברה,
הבעייה שלי היא כזאת, כאשר אני מריץ שאילתה (לצורך שמירת נתונים), אני נכנס לבסיס הנתונים ואני רואה שנישמרו אותם נתונים פעמיים.
דוגמא:
שם = אלון
שם = אלון

להלן הקוד שאותו אני מריץ:

קוד PHP:
<?php
 
$getfolders 
= array(glob("*"GLOB_ONLYDIR));
    
$date date('d/m/y');
    foreach (
$getfolders as $player){}
    
$playersnum count($player); //number of players in the root directory
     
for ($i=0$i<$playersnum$i++)
     {
     
$files scandir($player[$i]);
     unset(
$files[0], $files[1]);
                if(
$files){
     
$currntnum current($files);
                     
$lastnum end($files);
                     
$cuttonumc substr($currntnum03);
                     
$cuttonuml substr($lastnum03);
                     
//echo $player[$i]." | ".$cuttonuml." - ".$cuttonumc."<br>";
        
$con mysql_connect("localhost","root","");
             
mysql_select_db("pupdate"$con);
             
$sql_qry "INSERT INTO `upd` VALUES (".$i.", '".$player[$i]."', ".$cuttonumc.", ".$cuttonuml.", ".$cuttonuml.")";
             
mysql_query($sql_qry,$con);
             
mysql_close($con);
                     } else {
         
$con mysql_connect("localhost","root","");
                 
mysql_select_db("pupdate"$con);
                     
$sql_qry_empty "INSERT INTO `upd` VALUES (".$i.", '".$player[$i]."', 0, 0, 0)";
                     
mysql_query($sql_qry_empty,$con);
                     
mysql_close($con);
                     }
     }
 
?>


מה שבעצם אני מנסה לעשות זה לקרוא קבצים מתיקיות לגזור את כל התווים מהשם ולהשאיר רק את שלושת התווים הראשונים שהם בעצם מספר.

ואז לשמור כ:
id, foldername, currentnum, lastnum


וכל פעם שאני מריץ קוד זה אני מוצא את התוצאה כפולה בבסיס הנתונים, למישהו יש מושג כיצד לטפל בתופעה זו ?

תודה מראש על כל עזרה שתתקבל.

נערך לאחרונה ע"י iNfLuX בתאריך 30-07-2006 בשעה 17:00.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #4  
ישן 30-07-2006, 19:17
  DCD DCD אינו מחובר  
 
חבר מתאריך: 17.05.05
הודעות: 7,321
בתגובה להודעה מספר 3 שנכתבה על ידי iNfLuX שמתחילה ב "[QUOTE=DCD]בטח יש קטע בעייתי..."

למה עשית לולאת for במקום ה-foreach ?

קוד PHP:
 foreach ($getfolders as $player){} 


הלולאת foreach ריקה מתוכן....סתם כתבת אותה...

תנסה לכתוב:

קוד PHP:
 foreach ($getfolders as $player){ 
 
$files scandir($player[$i]);
     unset(
$files[0], $files[1]);
                if(
$files){
     
$currntnum current($files);
                     
$lastnum end($files);
                     
$cuttonumc substr($currntnum03);
                     
$cuttonuml substr($lastnum03);
                     
//echo $player[$i]." | ".$cuttonuml." - ".$cuttonumc."<br>";
        
$con mysql_connect("localhost","root","");
             
mysql_select_db("pupdate"$con);
             
$sql_qry "INSERT INTO `upd` VALUES (".$i.", '".$player[$i]."', ".$cuttonumc.", ".$cuttonuml.", ".$cuttonuml.")";
             
mysql_query($sql_qry,$con);
             
mysql_close($con);
                     } else {
         
$con mysql_connect("localhost","root","");
                 
mysql_select_db("pupdate"$con);
                     
$sql_qry_empty "INSERT INTO `upd` VALUES (".$i.", '".$player[$i]."', 0, 0, 0)";
                     
mysql_query($sql_qry_empty,$con);
                     
mysql_close($con);
                     }
     } 


(פשוט תוריד את לולאת for ובמקומה שים את foreach)
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #9  
ישן 02-08-2006, 00:06
  deano deano אינו מחובר  
 
חבר מתאריך: 16.03.06
הודעות: 42
בתגובה להודעה מספר 1 שנכתבה על ידי iNfLuX שמתחילה ב "שאילתת sql שומרת פעמיים את אותם נתונים בהרצה אחת"

ציטוט:
במקור נכתב על ידי iNfLuX
היי חברה,
הבעייה שלי היא כזאת, כאשר אני מריץ שאילתה (לצורך שמירת נתונים), אני נכנס לבסיס הנתונים ואני רואה שנישמרו אותם נתונים פעמיים.
דוגמא:
שם = אלון
שם = אלון

להלן הקוד שאותו אני מריץ:

קוד PHP:
<?php
 
$getfolders 
= array(glob("*"GLOB_ONLYDIR));
    
$date date('d/m/y');
    foreach (
$getfolders as $player){}
    
$playersnum count($player); //number of players in the root directory
     
for ($i=0$i<$playersnum$i++)
     {
     
$files scandir($player[$i]);
     unset(
$files[0], $files[1]);
                if(
$files){
     
$currntnum current($files);
                     
$lastnum end($files);
                     
$cuttonumc substr($currntnum03);
                     
$cuttonuml substr($lastnum03);
                     
//echo $player[$i]." | ".$cuttonuml." - ".$cuttonumc."<br>";
        
$con mysql_connect("localhost","root","");
             
mysql_select_db("pupdate"$con);
             
$sql_qry "INSERT INTO `upd` VALUES (".$i.", '".$player[$i]."', ".$cuttonumc.", ".$cuttonuml.", ".$cuttonuml.")";
             
mysql_query($sql_qry,$con);
             
mysql_close($con);
                     } else {
         
$con mysql_connect("localhost","root","");
                 
mysql_select_db("pupdate"$con);
                     
$sql_qry_empty "INSERT INTO `upd` VALUES (".$i.", '".$player[$i]."', 0, 0, 0)";
                     
mysql_query($sql_qry_empty,$con);
                     
mysql_close($con);
                     }
     }
 
?>


מה שבעצם אני מנסה לעשות זה לקרוא קבצים מתיקיות לגזור את כל התווים מהשם ולהשאיר רק את שלושת התווים הראשונים שהם בעצם מספר.

ואז לשמור כ:
id, foldername, currentnum, lastnum


וכל פעם שאני מריץ קוד זה אני מוצא את התוצאה כפולה בבסיס הנתונים, למישהו יש מושג כיצד לטפל בתופעה זו ?

תודה מראש על כל עזרה שתתקבל.


בלי קשר למה שאמרת, אני רואה שהתחברת עם רוט, מאוד מאוד לא מאובטח...
אם איכשהו מישהו מוצא את הסיסמה לFTP שלך הוא יכול גם להיכנס לMYSQL עם כל הרשאות הROOT....
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 20:16

הדף נוצר ב 0.07 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר