pętla php i jquery

0

jak zrobić pętlę w php i złapać w jquery?

 	    <script type="text/javascript">
    <!--
        $(document).ready(function() {
            var options = {
            target: '<?php echo '#message'.$i ?>', //Div tag where content info will be loaded in
            url:'files.php', //The php file that handles the file that is uploaded
            beforeSubmit: function() {
                $('<?php echo '#uploader'.$i ?>').html('<img src="ajax-loader.gif" border="0" />'); //Including a preloader, it loads into the div tag with id uploader
            },
            success:  function() {
                //Here code can be included that needs to be performed if Ajax request was successful
                $('<?php echo '#uploader'.$i ?>').html('');
                
            }
            };
            
            $('<?php echo '#upload'.$i ?>').submit(function() {
                $(this).ajaxSubmit(options);
                return false;
            });

        }); 
     //-->
    </script>

i php pętla

 	<?php
	for ($i = 1; $i <= 5; $i++) { ?>
    <form name="<?php echo 'upload'.$i ?>" id="<?php echo 'upload'.$i ?>" action="#" method="POST" enctype="multipart/form-data">
        <table cellpadding="4" cellspacing="4" border="0">
              <tr>
                <td class="fieldLabel" nowrap>File:</td>
                <td nowrap><input type="file" name="fileToUpload" id="fileToUpload" />
				<input type="submit" id="uploadFile" value="Wczytaj plik" /></td>
            </tr> 
<tr>			
			<div id="<?php echo 'message'.$i ?>"></div>
			<div id="<?php echo 'uploader'.$i ?>"></div>
			</tr> 
            
        </table>
    </form>
    	<?php }?>
0

może jakiś opis co w ogóle chcesz zrobić, a nie skrawek kodu z którego nic nie wynika i pół pseudo-zdania, z którego także nic nie wynika?

0

już tłumaczę:)
chciałem zrobić upload plików na serwer bez odświeżania strony
robię input typu file, który służy do pobrania nazwy pliku
następnie poprzez jquery wrzucam dane do files.php

jeżeli robię bez pętli czyli
form:

<form name="upload" id="upload" action="#" method="POST" enctype="multipart/form-data">
        <table cellpadding="4" cellspacing="4" border="0">
              <tr>
                <td class="fieldLabel" nowrap>File:</td>
                <td nowrap><input type="file" name="fileToUpload" id="fileToUpload" />
				<input type="submit" id="uploadFile" value="Wczytaj plik" /></td>
            </tr> 
<tr>			
			<div id="message"></div>
			<div id="uploader"></div>
			</tr> 
            
        </table>
    </form>

oraz pobranie przez id "upload" "message" i "uploader"

<script type="text/javascript">
    <!--
        $(document).ready(function() {
            var options = {
            target: '#message', //Div tag where content info will be loaded in
            url:'files.php', //The php file that handles the file that is uploaded
            beforeSubmit: function() {
                $('#uploader').html('<img src="ajax-loader.gif" border="0" />'); //Including a preloader, it loads into the div tag with id uploader
            },
            success:  function() {
                //Here code can be included that needs to be performed if Ajax request was successful
                $('#uploader').html('');
                
            }
            };
            
            $('#upload').submit(function() {
                $(this).ajaxSubmit(options);
                return false;
            });

        }); 
     //-->
    </script> 

to działa

jeśli zrobię pętlę for gdzie upload ma nazwę w zależności od kroku pętli, czyli upload1, upload2 itd.

<?php echo 'upload'.$i ?> 

to nie działa

0

Chyba nie rozumiesz różnicy między php a javascript. Php jest wykorzystywane po stronie serwera, javascript po stronie użytkownika, poczytaj o tym. Następnie polecam poczytać o asynchronicznym ładowaniu danych na stronę. W tym momencie jak się domyślam każdorazowo odświeżasz stronę (przesyłając do niej dane zawarte w formularzu).

0
sirkruk napisał(a):

W tym momencie jak się domyślam każdorazowo odświeżasz stronę (przesyłając do niej dane zawarte w formularzu).

nie, nie odświeżam strony

0

Niemniej poczytaj o tym jak działa asynchroniczność, bo kolejne elementy formularza powinny być dodawane z poziomu js, a Ty próbujesz to robić w php z tego, co widzę, jak zrozumiesz to, zrozumiesz gdzie masz błąd.

1 użytkowników online, w tym zalogowanych: 0, gości: 1