מציג תוצאות 1 עד 18 מתוך 18

נושא: אשמח לעזרה טבלת SQL בעיית עברית בטבלה

  1. #1
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts

    אשמח לעזרה טבלת SQL בעיית עברית בטבלה

    שלום חברים,
    נעזרתי בכל מיני מדריכים בתיכנות SQL , משהו מאוד מאוד בסיסי.
    התקנתי WAMP SERVER במחשב, בניתי את הטבלאות ישירות ב PHPADMIN שאני צריך.
    ייצרתי 2 קבצים אינטרנט להכנסת נתונים.
    כשאני מכניס שם בעברית לתוך תא כלשהו, וגם קורא מהטבלה, זה מציג בעברית בלי בעיה.

    שאני נכנס לטבלה דרך
    PHPADMIN זה רושם כל מיני סימנים ואותיות, צרפתי תמונה
    האם יש דרך שיהיה גם בטבלה עברית ?
    תמונות ממוזערות מצורפות תמונות ממוזערות מצורפות Click image for larger version. 

Name:	SQL.jpg‏ 
Views:	32 
Size:	110.8 קילובייט 
ID:	4071  

  2. פרסומת
  3. #2
    תאריך הצטרפות
    Aug 2013
    הודעות
    1,944
    תודה
    13
    קיבל/ה 286 תודות ב-251 הודעות
    תודה
    0
    Thanked 1 Time in 1 Post
    ממש לא מכיר את הנושא אבל נדמה לי ש PHPADMIN זה כלי מבוסס WEB (כלומר ממשק דרך הדפדפדן). ייתכן וצריך לשנות הגדרות בדפדפן בנושא ENCODING של טקסט.

  4. #3
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    ב-login של phpadmin אתה צריך לבחור את הקידוד שאתה רוצה להשתמש בו.
    בדרך כלל זה UTF-8. תבדוק שגם הטבלאות שיצרת לטובת שמירת הנתונים הם באותו הקידוד.
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  5. #4
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    ציטוט נכתב במקור על ידי 4Project צפיה בהודעה
    ב-login של phpadmin אתה צריך לבחור את הקידוד שאתה רוצה להשתמש בו.
    בדרך כלל זה UTF-8. תבדוק שגם הטבלאות שיצרת לטובת שמירת הנתונים הם באותו הקידוד.
    בכל דפי ה PHP הוספתי
    <meta charset="UTF-8">

    הסתכלתי בהגדרות phpmyadmin בדף הבית
    Server connection collation מופיע utf8mb4_unicode_ci
    בטבלאות מוגדר
    utf8_general_ci
    האם ההגדרות נכונות ?

  6. #5
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    התכוונתי לעמוד הכניסה ל-phpmyadmin.
    אצלי זה נראה כך:


    בעמוד הראשי אני רואה ש-Connection collation מוגדר כ-utf8_unicode_ci
    MySQL charset: UTF-8 Unicode (utf8)
    טבלאות שאני יצרתי הם עם utf8_general_ci, אבל יש גם כאלה שמוגדרים כ-utf8_bin.

    הבעיה שלך לדעתי היא בחיבור ולא בטבלאות, אלא אם כבר מילאת אותן בנתונים שהם לא ב-UTF8.
    תמונות ממוזערות מצורפות תמונות ממוזערות מצורפות Click image for larger version. 

Name:	Screenshot from 2017-06-03 21-47-25.png‏ 
Views:	75 
Size:	28.7 קילובייט 
ID:	4072  
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  7. #6
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    בדקתי בעמוד הראשי, אצלי לא מופיע את הקידוד ליד השפה כמו אצלך.
    אצלי רשם רק את השפה.

    אני ממלא את הטבלה דרך דף אינטרנטי בעזרת FORM שעשיתי.
    אם יש לך קוד לדוגמא להציץ בו אולי רשמתי משהו לא כשורה.

  8. #7
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    ממלא דרך PHP?
    תבדוק שגם קבצי ה-PHP הם ב-UTF8.

    אין לי קוד שאני יכול להראות, אבל יש מלא דוגמאות ברשת.
    תדפיס את ה-SQL query על המסך לפני שאתה שולח אותו ל-MySql.
    תראה שרואים עברית כמו שצריך, תפתח גם את ה-source של העמוד ותראה שגם שם רואים.
    תוודא שבשני המקרים העמודים מופיעים בדפדפן כ-UTF8.
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  9. #8
    תאריך הצטרפות
    Mar 2013
    הודעות
    4
    תודה
    0
    קיבל/ה 2 תודות בהודעה אחת
    תודה
    0
    Thanked 0 Times in 0 Posts
    מחזק את 4Project , תוודא שקבצי הphp שמורים תחת קידוד utf8 , כברירת מחדל פנקס הרשימות לא שומר בutf8 נסה עם notepad++ לדוגמא.

    Sent from my ONEPLUS A3000 using Tapatalk

  10. #9
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    אני עובד עם notpad++
    אתה חושב שהבעיה באיזה קידוד הקובץ נשמר במחשב ?

    לא בעיית הגדרה, פקודה ?

    איך אני מדפיס את ה
    SQL query על המסך?
    אשמח לדוגמת קוד שאדע איך לעשות.

  11. #10
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    ב-php מדפיסים עם print:
    קוד:
    print('blalbla');
    print($sql_query);
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  12. #11
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    זה נותן לי הודעת שגיאה הפקודה print($sql_query);
    נותן לא עובד אצלי

    תודה לעזרה.

    אולי אם אעלה את הקודים למקום איחסון זה התנהג אחרת, אנסה בהזדמנות.

  13. #12
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    נועם,

    אם אתה משתמש בשפת תכנות כלשהי, אז תקרא קצת ותלמד איך משתמשים בה...
    אתה אפילו לא כותב מה השגיאה ורוצה לדחוף את הקוד שלך כדי שמישהו יעבור עליו, כלומר יעשה את מה שאתה צריך לעשות.
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  14. #13
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    ציטוט נכתב במקור על ידי 4Project צפיה בהודעה
    נועם,

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

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

    קוד של ה- FORM שקראתי לו htmlAddHug.php
    קוד:
    <!DOCTYPE html>
    <html lang="he">
     <head>
     <!-- <meta charset="UTF-8"> -->
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <?php $thisPage="htmladdhug" ?>
      <title>הוספת חוג חדש</title>
      <link rel="stylesheet" type="text/css" href="style.css"/>
     </head>
     <body> 
     <div id="wrapper">
      <div id="headerBar">
        <?php include("menu.php"); ?> <!-- insert the menu -->
      </div>
      <div id="content">
        <h2>הוספת חוג חדש</h2>
        <div class="inner" align="right">
      <div class="form-style-3">
        <form method="post" action="addHug.php">
        <label for="hugim_name"><input class="input-field" name="hugim_name" type="text" placeholder="שם החוג" required><span>שם החוג:</span></label>
        <label><span>&nbsp;</span><input type="submit" value="שלח" /></label>
       </form>
       </div>
       </div>
       </div><!-- #content -->
      <footer>
      <?php include("footer.php"); ?> <!-- insert the footer -->
      </footer>
      </div>
     </body> 
     </html>
    הקוד של הקובץ שמקושר לראשון שקראתי לו addHug.php

    קוד:
    <!DOCTYPE html>
     <html lang="he">
     <?php $thisPage="addhug" ?>
     <head>
     <!-- <meta charset="UTF-8"> -->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <title>Menu</title>
    <link rel="stylesheet" type="text/css" href="style.css"/> 
     </head>
    <body>
     <div id="wrapper">
      <div id="headerBar">
      <?php include("menu.php"); ?> <!-- insert the menu -->
     </div> 
     <div id="content">
    <?php header('Content-Type: text/html; charset=utf-8');
    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "hugim";
    $conn = new mysqli($servername, $username, $password, $dbname);
     if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error); }
     // Create connection
     $conn = new mysqli($servername, $username, $password, $dbname);
     // Check connection
     if ($conn->connect_error)
     {
     die("Connection failed: " . $conn->connect_error);
     }
     $hugim_name = $_REQUEST["hugim_name"];
    $q = mysqli_query($conn,"SELECT * FROM `hugim`.`hugim_table` WHERE `hugim_name`=\"$hugim_name\"");
    $num_row = mysqli_num_rows($q);
    if($num_row==0)
    {
     $sql = "INSERT INTO `hugim`.`hugim_table` (`hugim_id`, `hugim_name`) VALUES (NULL, \"$hugim_name\")";
     if ($conn->query($sql) === TRUE) {
        echo "<div style='text-align:right'>חוג חדש נכנס למאגר בהצלחה</div>";
        }
        else
        {
        echo "Error: " . $sql . "<br>" . $conn->error;
        }
    }
    else
    {
    echo "<div style='text-align:right'>חוג קיים במאגר</div>";
    }
    $conn->close();
    ?>
    </div><!-- #content -->
      <footer><!-- #footer -->
      <?php include("footer.php"); ?> <!-- insert the footer -->
      </footer><!-- #footer -->
      </div><!-- #wrapper -->
    </body>
     </html>

  15. #14
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    הוספתי את הפקודה
    print($conn );

    קיבלתי את הודעת השגיאה

    Catchable fatal error: Object of class PDOStatement could not be converted to string inC:\wamp64\www\addHug.php
    נערך לאחרונה על ידי noam76; 06-06-2017 בשעה 17:44-24.

  16. #15
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    כל מה שארשום זה ניחוש.
    בלי להקים את כל המערכת כמו שהיא אצלך אי אפשר יהיה להגיד מה הבעיה.

    קודם כל, למה ה-charset בשני העמודים הוא בהערה?
    ולמה את המנסה להדפיס את ה-$conn?
    תדפיס את ה-$sql שבו בנית את ה-Insert query.

    בכל מקרה, תוודא ששמרת את שני הקבצים ב-UTF8.
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  17. #16
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    קיים פעמיים
    charset לכן השורה הראשונה כהערה, בשורה שמתחתיה זה לא בהערה.
    מצאתי את זה מתוך אתר חשבתי אולי היה צריך להוסיף עוד כמה פקודות לשורה, ניסיתי.

  18. #17
    תאריך הצטרפות
    Feb 2013
    הודעות
    812
    תודה
    21
    קיבל/ה 88 תודות ב-70 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    אצלי באתר יש רק את השורה ששמת בהערה.
    www.4project.co.il
    כל הרכיבים לפרוייקט שלכם

  19. #18
    תאריך הצטרפות
    Sep 2015
    הודעות
    15
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    אני חוזר אליכם.
    מצאתי את הפיתרון .

    1. מבנה הטבלאות ב phpmyadmin תחת callation צריך לבחור את הפונט utf8_general_ci

    2. בראש דפי PHP וגם HTML כמו שאמרנו יש להוסיף את השורה meta charset="utf-8"

    3.בשימוש PDO ישירות אחריו יש להוסיף את הפקודה $conn->query("SET NAMES 'utf8'");

    $conn = new PDO("mysql:host;dbname", $username, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
    // set character name
    $conn->query("SET NAMES 'utf8'");

    זה עובד, רושם עברית כמו שצריך בטלה, אני רואה עברית שאני ניגש לטבלה עצמה .

    שיהיה לכולנו אחלה המשך

הרשאות פרסום

  • אין באפשרותך לפרסם נושאים חדשים
  • אין באפשרותך לפרסם תגובות
  • אין באפשרותך לצרף קבצים
  • אין באפשרותך לערוך את הודעותיך
  •  
הרשמה