Mam pewien problem podczas pisania skryptu odpowiadającego za dynamiczne tworzenie katalogu na serwerze.
CSS + Wyświetlanie listy katalogów
<style type="text/css" media="all"> #create_catalog {float:left;margin:0;padding:5px 10px;width:auto;height:auto;border:1px dotted #393939;background:#123456;color:#FFFFFF;} #create_catalog:hover {float:left;margin:0;padding:5px 10px;width:auto;height:auto;border:1px dotted #393939;background:#654321;color:#FFFFFF;} #catalog_name {float:left;margin:0;padding:5px 10px;width:150px;height:auto;border:1px dotted #393939;background:#FFFFFF;color:#FF0000;display:none;} #create {float:left;margin:0;padding:5px 10px;width:auto;height:auto;border:1px dotted #393939;background:#123456;color:#FFFFFF;display:none;} #create:hover {float:left;margin:0;padding:5px 10px;width:auto;height:auto;border:1px dotted #393939;background:#654321;color:#FFFFFF;display:none;} #status {float:left;margin:0;padding:5px 10px;width:auto;height:auto;border:1px dotted #0090FF;background:#FFFFFF;color:#0090FF;display:none;display:block;} </style> <?php $directory = 'upload/'; $dir = opendir($directory); $file_list = '<ul>'; while($file_name = readdir($dir)) { if(($file_name != '.') && ($file_name != '..')) { $file_list .= '<li>'.$file_name.''; } } $file_list .= '</ul>'; closedir($dir); echo ' Pliki w '.$directory.':'.$file_list.''; ?>
$(document).ready(function() { $('#create_catalog').click(function(){ setInterval(function() { $("#catalog_name").fadeIn(); }, 100); setInterval(function() { $("#create").fadeIn(); }, 300); }); $('#create').click(function(){ var pattern = '/^[A-Za-z0-9_ \-]+$/i'; var folder = $('#catalog_name').val(); if(!pattern.test($(folder).val())) { alert("Niedozwolone znaki !"); } else { //if ($this.find('input[name=folder]').val()) { $.ajax({ type: "POST", url: "create.php", data: "folder=" + folder, success: function() { setInterval(function() { $("#catalog_name").fadeOut(); }, 100); setInterval(function() { $("#create").fadeOut(); }, 300); var contents = ['Tworzę katalog...', 'Katalog został pomyślnie utworzony :)']; setInterval(function() { }, 500); }, error: function(){ alert("error !"); } }); } }); });
Może mi ktoś powiedzieć dlaczego skrypt nie wyświetla komunikatów, tylko od razu odświeża stronę ?
Tak samo nie waliduje formularza "/^[A-Za-z0-9_ \-]+$/i"
Za każdą pomoc będę bardzo wdzięczny.
Pozdrawiam.
EDIT !
$(document).ready(function() { $('#create_catalog').click(function(){ setInterval(function() { $("#catalog_name").fadeIn(); }, 100); setInterval(function() { $("#create").fadeIn(); }, 300); }); $('#create').click(function(){ var pattern = /^[A-Za-z0-9_ \-]+$/i; var folder_name = $('#catalog_name').val(); var folder = $('#catalog_name'); if(!pattern.test($(folder).val())) { alert("Niedozwolone znaki lub brak nazwy katalogu !"); } else { $.ajax({ type: "POST", url: "create.php", data: "folder_name=" + folder_name, success: function() { //if ($this.find('input[name=folder]').val()) { setInterval(function() { $("#catalog_name").fadeOut(); }, 100); setInterval(function() { $("#create").fadeOut(); }, 300); var contents = ['Tworzę katalog...', 'Katalog został pomyślnie utworzony :)']; var current = 0; setInterval(function() { document.getElementById('status').innerHTML = contents[current++]; }, 500); setInterval(function() { parent.location='<?php $PHP_SELF; ?>'; }, 10000); //} else { // alert("Nie podales nazwy !"); //} //return false; }, error: function(){ alert("error !"); } }); } }); });
Działa alert gdy są niedozwolone znaki lub brak nazwy, ale nadal nie działają komunikaty w divie o id='status', które mają się pojawiać gdy utworzono katalog, a dopiero po tym odświeżyć stronę...
DO ZAMKNIĘCIA, JUŻ SOBIE PORADZIŁEM ! 
Dzięki Wam za MEGA zainteresowanie ;]

Dzięki Wam za MEGA zainteresowanie ;]