الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

رفع ملفات صور باللغه العربيه ؟؟ هل من مساعده

بدأه فريز في 22 ديسمبر 2009 · 10 رد · 1,430 مشاهدة · في JavaEE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

وضعت كود لرفع ملفات الصور في جهاز الكود يشتغل وتمام لكن لماارفع صوره بالعربي تطلع الصوره برموز غريبه

على اني وضعت <% request.setCharacterEncoding("windows-1256");%>

والداتا بيس utf8

ارجو مساعدتي جدا

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<%@page import="java.io.*,java.util.*,javax.swing.*,java.awt.*,java.awt.event.*" %>

<html dir="rtl"> <%@ page contentType="text/html; charset=windows-1256" language="java" import="javazoom.upload.*,java.util.*,java.sql.*" %>

<% request.setCharacterEncoding("windows-1256");%>
<% response.setCharacterEncoding("windows-1256");%>

<jsp:useBean id="upBean" scope="page" class="javazoom.upload.UploadBean" >
  <jsp:setProperty name="upBean" property="folderstore" value="C:\Users\eman\Documents\NetBeansProjects\TM\web\uploads" />
</jsp:useBean>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
<title>رفع الملفات</title>
</head>

<body style="font-family:Arabic Transparent; font-size:20px;">
<center>
<form method="post" action="upload.jsp" name="MyForm" enctype="multipart/form-data" onSubmit="return Check();">
  <table border="0" cellspacing="1" cellpadding="1" align="center">
    <tr>
      <td align="right"><b>اختر الملف للرفع</b></td>
    </tr>
    <tr>
      <td align="center">
        <input type="file" name="uploadfile" size="50"/>
        </td>
    </tr>
    <tr>
      <td align="left">
		<input type="hidden" name="todo" value="upload"/>
        <input type="submit" name="Submit" value="رفع"/>
        <input type="reset" name="Reset" value="إلغاء"/>
        </td>
    </tr>
  </table>
</form>

<table style="font-family:Arabic Transparent; font-size:20px;"><tr><td align="right">
<%
      if (MultipartFormDataRequest.isMultipartFormData(request))
      {
         // Uses MultipartFormDataRequest to parse the HTTP request.
         MultipartFormDataRequest mrequest = new MultipartFormDataRequest(request);

         String todo = null;

         if (mrequest != null) todo = mrequest.getParameter("todo");
	     if ( (todo != null) && (todo.equalsIgnoreCase("upload")) )
	     {
                Hashtable files = mrequest.getFiles();
                if ( (files != null) && (!files.isEmpty()) )
                {
                    UploadFile file = (UploadFile) files.get("uploadfile");

                    if (file.getFileName() != null) {
					out.println("تم رفع الملف");

                                     // Uses the bean now to store specified by jsp:setProperty at the top.
                                        upBean.store(mrequest, "uploadfile");

					try {
					Class.forName("com.mysql.jdbc.Driver");
					Connection connction = DriverManager.getConnection("jdbc:mysql://localhost:3306/TM","root","1234");
					Statement statement = connction.createStatement();

					int row = statement.executeUpdate("INSERT INTO images(image_name,image_url) VALUES ('"+file.getFileName()+"','uploads/"+file.getFileName()+"')");

                                        %>  
                                        <%
                                        }
					catch (Exception e){
					out.println(e);
					}


					}
					else
					{
					out.println("You Donnot Chose File");
					}
                }
                else
                {
                  out.println("<li>No uploaded files");
                }
	     }
         else out.println("<BR> todo="+todo);
      }
%>
</td></tr></table>
</center>
</body>
</html>

تم تعديل هذه المشاركة بواسطة علاء الصالحي في 23 ديسمبر 2009 في 00:19 — السبب: إضافة وسم code

#2

لو سمحت ضع المشروع كاملاً

أقصد كل ما يمكنا من التجربة

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#3
علاء الصالحي كتب:

لو سمحت ضع المشروع كاملاً

أقصد كل ما يمكنا من التجربة

تحياتي

مشروع تخرجي وهو كبير جدا ..بس هذا الكود الذي ارسلته يعمل لوحده

#4

بالتأكيد لا يعمل لوحده

على العموم أظن المشكلة في عملية تخزين الملف

أو في عملية تخزين الـURL في قاعدة البيانات

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#5
علاء الصالحي كتب:

بالتأكيد لا يعمل لوحده

على العموم أظن المشكلة في عملية تخزين الملف

أو في عملية تخزين الـURL في قاعدة البيانات

تحياتي

الاخ الفاضل علاء ارسلت لك الملف كامل وحذفت الاشياء التي ليس لها علاقه

وهذا هي السكيما لتيبل فيديو وصور اللذان لهما نفس المشكله عند الرفع باللغه العربيه

CREATE TABLE video (

v_id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,

file_name VARCHAR(1000) NOT NULL,

file_path VARCHAR(1000) NOT NULL,

file_size VARCHAR(1000) NOT NULL

);

DROP TABLE IF EXISTS images ;

CREATE TABLE images (

ID INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,

image_name VARCHAR(600) NOT NULL,

image_url VARCHAR(600) NOT NULL

);

1.rar

#6

أخي لماذا لا توحد نوع encoding

أفضل utf-8

ما نوع قاعدة البيانات التي تعمل عليها؟

هل جربت أن تخزن أشياء عربية أخرى غير أسماء الملفات؟

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#7

نوعها MYsql 5.1,وقد جربت سابقا توحيدها الى utf8لكن تظهر لي مشكله انني عندما اقوم باضافه محتوياتي التي باللغه العربيه الى الداتا بيس تظهر مشكله وهي ظهور استفهام واشياء ليس لها معنى لذا

وضعت windows-1256مشكلتي اثناء رفع الصور والفيديو لازالت عندما ارفعها باللغه العربيه تظهر بحروف غريبه

#8

ابحث هنا في المنتدى وستجد الكثير عن نفس الموضووع

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#9

الاخ علاء ..ارجو ان تساعدني لان جميع المواضيع بالمنتدى تستخدم الترميز utf-8 وانا استخدمه والذي يظهر لي في الداتابيس هو قاربيج ؟؟؟؟ثم استخدمت windows-1256

ولازالت المشكله ثم احدهم قال لي اسال مستضيفك وممكن عند الاستضافه تضبط الامور لكن لدي مشاكل في الاستضافه ايضا فانا اريد مساعده ومشوره منكم ماذا افعل؟؟

#10

يا أخي سأساعدك لو تأكدت أنه لا يوجد حل لمكشلتك في المنتدى

لا يعقل أن أقوم كل مرة بالكتابة من جديد

ابحث عن مشاكل اللغة العربية وقاعدة البيانات

/index.php?showtopic=200022&st=0&p=994165&hl=utf-8%20mysql%20%D8%A7%D9%84%D8%B9%D8%B1%D8%A8%D9%8A%D8%A9&fromsearch=1entry994165

/index.php?showtopic=198635&st=0&p=988984&hl=utf-8%20mysql%20%D8%A7%D9%84%D8%B9%D8%B1%D8%A8%D9%8A%D8%A9&fromsearch=1entry988984

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#11

السلام عليكم و رحمة الله و بركاته،،

لا يوجد مشاكل إطلاقا في الترميز utf-8 بين الجافا و الـ MySQL Server .. و لكن يجب أن تتوفر الأمور التالية:

1. عند إعداد MySQL Server يفضل استخدام النسخة المنفردة من موقع MySQL نفسه.. أي من المفضل عدم استخدام أي package، و عند إعداد نسخة الـ Server يجب اختيار خيار Best Support for Multilingualism و التي تجعل MySQL يستخدم utf-8 بشكل أساسي..

2. ترك جميع أمور الترميز في الجافا بصورتها الأوليه أي عدم تغيير أي شيء إلى windows-1256 بأي حال من الأحوال.. مثل الـ page encoding في صفحات الـ html أو الـ request و الـ response يجب تركها بشكل تام للـ default و الـ charset لـ utf-8. لأن هذه التغييرات تجعل صيانة الكود نوع من المعجزات..

3. يمكنك استخدام طريقة بناء الـ connection string التالية و التي قمت بكتابتها و أستخدمها دائماً مع MySQL و تحتوي على ما يلزم للغة العربية بالـ utf-8

public String generateConnectionString() {
        StringBuilder builder = new StringBuilder();
        builder.append("jdbc:mysql://").
                append(getServerLocation()).
                append("/").
                append(getDatabaseName()).
                append("?user=").
                append(getUserName()).
                append("&password=").
                append(getPassWord()).
                append("&autoReconnect=true&useUnicode=yes");

        return builder.toString();
    }

مع مراعاة تجهيز الـ Getters المناسبة كما هو ظاهر

بهذا الشكل نحن على استعداد تام لاستخدام الـ MySQL مع الـ Java و استخدام utf-8 فقط بقي شيء أخير.. على الأرجح لأنك قد قمت بأكثر من محاولة بين الـ Windows-1256 و الـ UTF-8 فبالتأكيد الجداول تعريفات اللغة فيها غير سليمة على الإطلاق للتأكد يرجى عمل Copy Create Statement لأي جدول إن كان هناك مشكلة فستجدين أكثر من character encoding في التعريف.. فيما يلي جدول سليم تماما يدعم UTF-8 يرجى أن يكون SQL الجداول مثله لضمان النتيجة السليمة.. سبب التشويه في الـ SQL هو أن الـ Code Generator الخاص به سيء بعض الشيء عند التعديلات..

DROP TABLE IF EXISTS `attendance_system`.`ats_employees`;
CREATE TABLE  `attendance_system`.`ats_employees` (
  `id` varchar(100) NOT NULL,
  `name` varchar(300) NOT NULL,
  `picture` longblob NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

كما قلت سابقاً لا يجب تواجد أي Encoding آخر فقط في النهاية كما هو واضح..

بغض النظر عن نوع المشكلة.. أتمنى أن تساعدك هذه المعلومات في حل مشكلتك..

و أنا مع رأي صديقي و زميلي علاء في أن تلجأي للبحث لتقوية قدراتك البحثية.. و لأنك ستتعثرين بأشياء كثيرة لم تكوني لتعلميها إلا بالبحث..

تحياتي،،

1
n622971709_461151_8573.jpg

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…