View Single Post
ישן 29-06-07, 08:41   # 1
Hanan
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
גיל: 38
הודעות: 841

Hanan לא מחובר  

סקריפט קטן לאלו שמסתבכים עם עברית בדאטה בייס

שלום חברים,
בהמשך לאשכול הקודם שלי בו חברים פה בפורום עזרו. בניתי (בעזרתכם כמובן) איזשהו סקריפט שעזר לי נורא.
אני אסביר קודם למה בניתי אותו ואח"כ למה הוא טוב.
עברית בדאטה בייסים זה משהו לא חדש.. המון מהמתכנתים בין היתר אני. מסתבכים בחלק מן השרתים ובין כל שרת לשרת יש קידודים ושיטות גיבויים שונים.
לכן בניתי איזשהו סקריפט שבעצם לוקח את כל הטבלאות בדאטה בייס ומכין קובץ SQL שהוא רק INSERT לדאטה בייס.
למה הוא טוב?
הרעיון היה בעצם לעשות גיבוי באמצעות phpmyadmin לטבלאות בלי ה Data.. ואת ה INSERT לעשות בעזרת סקריפט. (לפחות אלו שעובדים עם windows-1255 כמוני).
הסקריפט בעצם לוקח את כל הטבלאות בדאטה בייס ומכין קובץ שעושה INSERT לכל המידע בהתאם לטבלאות שכבר קיימות.

הסקריפט:
PHP קוד:
<?php
require('conf.php');
        
$query=mysql_list_tables($db_name);
        while (
$rec mysql_fetch_array($query)) {
            
$qq=mysql_query("SELECT * FROM ".$rec[0]." ORDER BY id DESC");
            while (
$ww=mysql_fetch_array($qq)) {
                
$count=count($ww)/2-1$values='';
                for (
$i=0$i<=$count$i++) $values.="'".$ww[$i]."',"$strlen=strlen($values);
                
$intofile.="INSERT INTO `".$rec[0]."` VALUES (".substr($values,0,$strlen-1).")\n";
                }
            }
        
$openfile=fopen("sql/backup_db_".date("d-m-y.His"time()).".sql""x");
        
fwrite($openfile$intofile);
        
fclose($openfile);
    echo 
"done!";
?>
את הסקריפט שקרוא את הקובץ sql ומבצע INSERT אני משאיר לכם, אתם בטוח יודעים

וזהו, מקווה שעזרתי, לי לפחות זה שימושי מאוד ועובד מצויין.

* חשוב לפתוח תיקיה sql, לשם הוא מכניס את כל הגיבויים.
__________________
פרוייקטים: חדשות, קייטרינג, מילים לשירים, זר מתוק

בניית אתרים - Wise Group Media LTD

Last edited by Hanan; 29-06-07 at 09:13..
  Reply With Quote