Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Pętla w <head>? Jak zrobic dynamiczną sekcję <head>?
zaaap
post 28.11.2008, 00:55:18
Post #1





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

Ostrzeżenie: (0%)
-----


Witam,
Do mojej strony wprowadzilem skrypt rozwijacy (animujacy) i chowający okreslone divy. Wszystko dziala, ale w sekcji head strony musi byc umieszczony podany kod:

  1. <script type="text/javascript" src="admin/jquery-1.2.2.pack.js"></script>
  2. <script type="text/javascript" src="admin/animatedcollapse.js">
  3. <script type="text/javascript">
  4. animatedcollapse.addDiv('jason', 'fade=0,height=')
  5. animatedcollapse.init()

I teraz, oblugiwany bedzie jedynie jeden div. U mnie divow bedzie tyle ile komentarzy:
  1. <div id='jason<?php echo $i; ?>' style='display:none;'>


Potrzebne mi jest to do edytowania kazdego komentarza na stronie. Admin po kliknieciu "edit" bedzie widzial ladnego rozwijanego diva z zawartoscia gotowa do edycji.
I tutaj wlasnie jest problem, gdyz nie mam zamiaru w <head> dawac
Kod
animatedcollapse.addDiv('jason'
i tak az do 'jason54' czy 'jason14653', bo to bez sensu. Probowalem heada przelepic nizej i zapodac w nim $i z petli służącej do wyswietlania komentarzy, jednak to rowniez nie podziałało. Prosze mnie poprawic jesli sie myle, ale head nie moze byc modyfikowany dynamicznie?
Ktos ma jakis pomysl jak to poskładać? Bede wdzieczny.

Edit:

Przelepilem <head> nizej kodu, tam gdzie została zainicjowana petla dla zmiennej %i.
Wczesniej dalem: (dla odczytania liczby wyswietlonych komentarzy)
Kod
$licznik = $wiersz->num_rows;


A pozniej w samym headzie cos takiego:
Kod
<script type="text/javascript">

animatedcollapse.addDiv('jason', 'fade=0,height=')
<?php
for ($a=1; $a<$licznik; $a++)
{
echo "animatedcollapse.addDiv('jason".$a."', 'fade=0,height=')";
}
?>
animatedcollapse.init()

</script>


I... dalej nic, ale proboje dalej i licze na propozycje.

Ten post edytował zaaap 28.11.2008, 01:10:07
Go to the top of the page
+Quote Post
AxZx
post 28.11.2008, 01:07:44
Post #2





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

Ostrzeżenie: (0%)
-----


może takie coś:
Kod
<script type="text/javascript">
<?php for($i=0;$i<=100;$i++): ?>
animatedcollapse.addDiv('jason<?=$i?>', 'fade=0,height=')
<?php endforeach; ?>
animatedcollapse.init()
</script>


jak masz tych divów 10000000 to może być trochę głupi pomysł. wtedy spróbuj napisać coś innego w JS zamiast korzystać z tego gotowca animatedcollapse.


--------------------
aplikacje internetowe | Symfony
Go to the top of the page
+Quote Post
zaaap
post 28.11.2008, 01:16:04
Post #3





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

Ostrzeżenie: (0%)
-----


To niestety jak moj Edit na gorze (prawie identyczny) nie podziałało
Go to the top of the page
+Quote Post
AxZx
post 28.11.2008, 01:24:56
Post #4





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

Ostrzeżenie: (0%)
-----


ale jaki jest błąd?
może średnik na końcu?
Kod
echo "animatedcollapse.addDiv('jason".$a."', 'fade=0,height=');";


--------------------
aplikacje internetowe | Symfony
Go to the top of the page
+Quote Post
zaaap
post 28.11.2008, 01:47:22
Post #5





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

Ostrzeżenie: (0%)
-----


Cytat(AxZx @ 28.11.2008, 01:24:56 ) *
ale jaki jest błąd?
może średnik na końcu?
Kod
echo "animatedcollapse.addDiv('jason".$a."', 'fade=0,height=');";


Błedu nie ma, po prostu div sie nie pokazuje (nie rozwija)

A niby po co mialby byc tam srednik? W orginale nie ma, i zeby nie bylo, to sprawdzilem ze srednikiem i nic

Dobra zrobione, oto co pomogło:
1) wczesniej nie zauwazylem, ze sekcje head mam pod echo z php, wiec nie za bardzo
2) a tak to wyglada
Kod
<script type="text/javascript">

animatedcollapse.addDiv('jason', 'fade=0,height=')
<?php
for ($a=1; $a<$licznik; $a++)
{
?>
animatedcollapse.addDiv('jason<?php echo $a; ?>', 'fade=0,height=')
<?php
}
?>

animatedcollapse.init()

</script>


Ten post edytował zaaap 28.11.2008, 02:22:59
Go to the top of the page
+Quote Post
magra
post 28.11.2008, 12:16:08
Post #6





Grupa: Zarejestrowani
Postów: 34
Pomógł: 8
Dołączył: 5.10.2004

Ostrzeżenie: (0%)
-----


A po cholere ci ten "animatedcollapse" skoro masz jquery:
  1. <?php
  2. $(document).ready(function(){
  3.  $('.showableDiv').bind('click', function(){
  4.    $(this).slideToggle();
  5.  });
  6. });
  7. ?>


dajesz wszystkim divom klase "showableDiv" i wio


--------------------
www.internetum.pl
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 00:30