يمكنك فرض شرط على المستخدم من خلال استخدام JavaScript للتأكد من أنه قام بإدخال واحد فقط من الحقلين فإذا كان المستخدم قد أدخل نصًا في الحقل الأول، يجب أن يكون الحقل الثاني فارغا، والعكس صحيح يمكن التحقق من هذه الشروط عند إرسال النموذج (form):
document.querySelector("form").onsubmit = function(event) {
const textField = document.querySelector("#textField");
const fileInput = document.querySelector("#fileInput");
if (!textField.value && !fileInput.files.length) {
alert("يرجى إدخال نص أو تحميل صورة.");
event.preventDefault();
return false;
}
if (textField.value && fileInput.files.length) {
alert("يرجى إدخال نص أو تحميل صورة فقط.");
event.preventDefault();
return false;
}
};
فإذا كان المستخدم قد أدخل نصا، يمكنك حفظه مباشرة في حقل نصي في قاعدة البيانات وإذا كان قد رفع صورة، يمكنك تخزين الصورة في مجلد مخصص على الخادم ثم حفظ مسار الصورة في قاعدة البيانات:
CREATE TABLE user_inputs (
id INT PRIMARY KEY AUTO_INCREMENT,
input_text TEXT,
image_path VARCHAR(255)
);
وللاستعلام لإدخال البيانات في حالة ما إذا كان هناك نص فقط:
INSERT INTO user_inputs (input_text) VALUES ('نص المستخدم');
وإذا كانت هناك صورة فقط:
INSERT INTO user_inputs (image_path) VALUES ('path/to/image.jpg');
وعند استعراض البيانات من قاعدة البيانات، يمكنك التحقق إذا كان هناك نص أو مسار للصورة ومن ثم عرض المحتوى بناء على ذلك.