- این موضوع 5 پاسخ، 2 کاربر را دارد و آخرین بار در 4 سال قبل بدست علی ربیع زاده بهروزرسانی شده است.
-
نویسندهنوشتهها
-
23 مرداد 1399 در 10:34 #13760سید صدرا ستاره دانمشارکت کننده
سلام.
در دوره ی php و mysql سایت روش mvc توضیح داده شده است ولی در هیچ بخشی از کدهای جاوااسکریپت استفاده نشده است.
چجوری میشه کدهای جاوا اسکریپت رو هم در ساختار mvc پیاده سازی کرد؟
با تشکر
23 مرداد 1399 در 10:56 #13762علی ربیع زادهمدیرکلسلام صدرا جان. دوره جاوا اسکریپت جداگانه هست البته تعریف آن پیچیده نیست، اما به احتمال زیاد مباحث مربوط به استفاده در js در پروژه mvc به صورت ویدیو آموزشی به دوره php و mysql اضافه میشه.
برای اینکه مشکل شما در حال حاضر برطرف بشه، باید مسیر فایل js رو در فایل footer.php قبل از تگ </body> و </html> اضافه کنید.
برای مثل به صورت زیر عمل کنید
``
به این شکل دیگه مشکل فراخوانی js حل میشه و توی همه صفحات لود میشه.
1 کاربر که از نویسنده این موضوع تشکر کرده اند.
23 مرداد 1399 در 11:20 #13764سید صدرا ستاره دانمشارکت کنندهالان من با mvc یک فایل login.html رو دو بخش کردم و میخوام که اطلاعات فرم داخل این فایل فرستاده بشه به جاوا اسکریپت و جاوا بعد از پروسسی که روش انجام اطلاعات رو برگرداند به php ولی مشکلی که هست اینه که وقتی روی دکمه ی ورود کلیک میشه دوباره کنترلر لاگین داخل php صدا میشه و کاری با جاوا نداره.
23 مرداد 1399 در 11:37 #13766علی ربیع زادهمدیرکلمن کدهای شما رو دیدم بینید شما برای اینکه با استفاده از javascript لاگین کنید. یا مواردی انجام بدید که صفحه رفرش نشه باید از ajax استفاده کنید که صفحه رفرش نشه و پارامترهای شما به سمت سرور ارسال بشه و پاسخ داده بشه.
در پایان فایل login.php مثل بالا
` $(function () {
check(“#loginForm”);
});`اینم کد ajax اگر میخواهید توی فایل جداگانه باشه
`
function check(selector) {
selector = $(selector);
$(selector).submit(function (e) {
var postData = $(this).serializeArray();
var formURL = $(this).attr(“action”);
//alert(postData.toSource());
$.ajax(formURL, {
type: ‘post’,
dataType: ‘json’,
data: postData,
success: function (data) {
if (data[‘status’] == true) {
window.location.reload();
}
$(“.message”).text(data[‘message’]);}
});
e.preventDefault(); //STOP default action
e.unbind();
});
}`23 مرداد 1399 در 11:44 #13767سید صدرا ستاره دانمشارکت کنندهالان مشکل اینه که کلا فایل جاوا فراخوانی نمیشه.
یعنی وقتی روی دکمه ورود کلیک میشه وارد فایل جاوا نمیشه که جاوا بتونه اطلاعات رو از فورم html بگیره.
عملا خط آخر login.php اجرا نمیشه وقتی که رو دکمه کلیک میشه درحالی که در کد html دستور onclick نوشته شده.
24 مرداد 1399 در 09:37 #13770علی ربیع زادهمدیرکلالان مشکل اینه که کلا فایل جاوا فراخوانی نمیشه.
یعنی وقتی روی دکمه ورود کلیک میشه وارد فایل جاوا نمیشه که جاوا بتونه اطلاعات رو از فورم html بگیره.
عملا خط آخر login.php اجرا نمیشه وقتی که رو دکمه کلیک میشه درحالی که در کد html دستور onclick نوشته شده.
صدرا جان شما فکر میکنم مفاهیم موضوع برنامه نویسی بدون لود شدن دوباره صفحه را کامل نمی دونید و باید حتما زیر ساختی یاد بگیرید ما تو این ماه یک دوره برای این موضوع میزاریم.
ولی برای اینکه بهتر متوجه بشید شما وقتی یک فرم رو ارسال (submit) می کنید خود به خود صفحه رفرش میشه و برای اینکه صفحه رفرش نشه باید جلوی آون رو بگیرید خب آلان شما از جاوا اسکریپت استفاده کردید و این نمونه کد تست شده برای شما.
<form id="box" class="box" action="test.php" method="post"> <h1>!وارد شوید</h1> <input id="username" name="user" type="text" placeholder=" نام کاربری " /> <input id="password" name="pass" type="password" placeholder=" رمز عبور " /> <input id="submit" name="submit" type="submit" value=" ورود " /> </form><a href="#"> رمز عبور را فراموش کردم </a> <script src="f.js"></script>
اطلاعات فایل js
var username = document.getElementById('username'); var password = document.getElementById('password'); document.getElementById("submit").addEventListener("click", function (event) { event.preventDefault(); if (username.value === '' || password.value === '') { alert('salam salam'); } else { var currentForm = document.getElementById('box'); var form = document.createElement("form"); form.setAttribute("method", currentForm.getAttribute('method')); form.setAttribute("action", currentForm.getAttribute('action')); var user = document.createElement("input"); user.setAttribute("name", 'user'); user.setAttribute("type", "text"); user.value = username.value; var pass = document.createElement("input"); pass.value = password.value; pass.setAttribute("name", 'pass'); pass.setAttribute("type", "password"); document.body.append(form); form.submit(); } });
1 کاربر که از نویسنده این موضوع تشکر کرده اند.
-
نویسندهنوشتهها
- موضوع ‘استفاده از javascript در mvc’ برای پاسخ های جدید بسته است.