Dezelfde machine als PHP?quote:Op vrijdag 4 november 2011 11:27 schreef Sitethief het volgende:
Heeft iemand ervaring met ftp_connect() ? Hij doet het niet, maar ik krijg ook geen foutmelding waar ik iets mee kan. Het maakt ook niet uit of ik wel of niet poort 21 defineer als poort. De FTP server waarmee ik connect doet het wel via Firefox en Filezilla (op dezelfde machine)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | <?php function countWallpapers() { $args = array( 'child_of' => $post->ID, 'title_li' => '', 'sort_order' => 'DESC', 'sort_column' => 'menu_order' ); $wallpapers = get_pages($args); $count = 0; foreach($wallpapers as $wallpaper){ if(has_post_thumbnail($wallpaper->ID)) { $count++; } } echo $count; } function showWallpapers() { $args = array( 'child_of' => $post->ID, 'title_li' => '', 'sort_order' => 'DESC', 'sort_column' => 'menu_order' ); $wallpapers = get_pages($args); $output = ''; foreach($wallpapers as $wallpaper){ if(has_post_thumbnail($wallpaper->ID)) { $thumb = get_the_post_thumbnail($wallpaper->ID, 'thumbnail', $attr = 'title='.$wallpaper->post_title); $link = get_page_link($wallpaper->ID); $output .= '<div class="wallpaper">' . "\n"; $output .= '<a href="' . $link . '" title="' . $wallpaper->post_title . '">' . $thumb . '</a>' . "\n"; $output .= '</div>' . "\n\n"; } } echo $output; } ?> |
1 2 3 4 | <div class="entry-content"> <p class="amount"><?php countWallpapers(); ?> wallpapers</p> <?php showWallpapers(); ?> </div><!-- .entry-content --> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | <?php function getWallpaperdata() { $args = array( 'child_of' => $post->ID, 'title_li' => '', 'sort_order' => 'DESC', 'sort_column' => 'menu_order' ); $wallpapers = get_pages($args); $count = 0; $output = ''; foreach($wallpapers as $wallpaper){ if(has_post_thumbnail($wallpaper->ID)) { $count++; $thumb = get_the_post_thumbnail($wallpaper->ID, 'thumbnail', $attr = 'title='.$wallpaper->post_title); $link = get_page_link($wallpaper->ID); $output .= '<div class="wallpaper">' . "\n"; $output .= '<a href="' . $link . '" title="' . $wallpaper->post_title . '">' . $thumb . '</a>' . "\n"; $output .= '</div>' . "\n\n"; } } return array('count' => $count, 'html' => $output); } ?> |
1 2 3 4 | <div class="entry-content"> <p class="amount"><?php $wallpapers = getWallpaperdata(); echo $wallpapers['count']; ?> wallpapers</p> <?php echo $wallpapers['html']; ?> </div><!-- .entry-content --> |
Die methodes zijn volgens mij best wel zwaar, daar valt wel wat winst te behalen denk.quote:Op vrijdag 4 november 2011 14:22 schreef GlowMouse het volgende:
[ code verwijderd ]
[ code verwijderd ]
en opletten dat je in die foreach-loop niet de lelijkste queries uitvoert via get_the_post_thumbnail of get_page_link.
Thanks De values in een array gooien dus. Is het überhaupt mogelijk om aparte functies te maken van 2 values binnen een functie? Denk van niet aangezien mijn geGoogle niks opleverde maar ik vraag het toch evenquote:Op vrijdag 4 november 2011 14:22 schreef GlowMouse het volgende:
[ code verwijderd ]
[ code verwijderd ]
en opletten dat je in die foreach-loop niet de lelijkste queries uitvoert via get_the_post_thumbnail of get_page_link.
Functies van values maken snap ik niet helemaal?quote:Op vrijdag 4 november 2011 14:50 schreef Chanty87 het volgende:
[..]
Thanks De values in een array gooien dus. Is het überhaupt mogelijk om aparte functies te maken van 2 values binnen een functie? Denk van niet aangezien mijn geGoogle niks opleverde maar ik vraag het toch even
De methodes die je daar aanroept kunnen potentieel 'zwaar' zijn, dat wil zeggen dat ze lang duren, veel resources vreten of onnodig werk verrichten.quote:Wat bedoel je precies met het laatste? De foreach loop had ik als snippet ergens vandaan geplukt, is hoewel ik ook een voorbeeld met add_filter zag. Zitten daar bepaalde (grote) voordelen aan tov get_the_post_thumbnail?
Zodat ik het ~netjes~ kan oproepen zoals ik eerst had gedaanquote:Op vrijdag 4 november 2011 14:54 schreef Scorpie het volgende:
[..]
Functies van values maken snap ik niet helemaal?
Ah zo. Dacht juist dat je met get_the_post_thumbnail meteen de thumb als resultaat krijgt zonder de hele post aan te roepen en de thumbnail eruit te vissen. Blijkbaar is het andersom dan?quote:Op vrijdag 4 november 2011 14:54 schreef Scorpie het volgende:
[..]
De methodes die je daar aanroept kunnen potentieel 'zwaar' zijn, dat wil zeggen dat ze lang duren, veel resources vreten of onnodig werk verrichten.
Niemand weerhoudt je ervan die code die GlowMouse inline zet, in een aparte functie te douwen.quote:Op vrijdag 4 november 2011 15:08 schreef Chanty87 het volgende:
[..]
Zodat ik het ~netjes~ kan oproepen zoals ik eerst had gedaan
ik wil, ondingquote:Op vrijdag 4 november 2011 15:13 schreef KomtTijd... het volgende:
[..]
weleens van smarty gehoord trouwens?
Wat Glow heeft gedaan is het mooiste imo.quote:Op vrijdag 4 november 2011 15:08 schreef Chanty87 het volgende:
[..]
Zodat ik het ~netjes~ kan oproepen zoals ik eerst had gedaan
Geen idee wat daar in gebeurt, het is een custom functie die we niet in kunnen zien, aan jou de schone taak dat uit te zoekenquote:Ah zo. Dacht juist dat je met get_the_post_thumbnail meteen de thumb als resultaat krijgt zonder de hele post aan te roepen en de thumbnail eruit te vissen. Blijkbaar is het andersom dan?
Ik had al eerder (zonder succes dus) geprobeerd om functies van die values te maken maar dan zou je de values vanuit getWallpaperdata(); moeten halen en daarbuiten in een eigen functie zetten. Want als ik de functies IN getWallpaperdata(); zet dan moet eerst getWallpaperdata(); zelf aangeroepen zijn anders bestaan de nieuwe functies niet.quote:Op vrijdag 4 november 2011 15:23 schreef Scorpie het volgende:
[..]
Wat Glow heeft gedaan is het mooiste imo.
get_the_post_thumbnail is een Wordpress core functie, ziet er zo uit:quote:Op vrijdag 4 november 2011 15:23 schreef Scorpie het volgende:
[..]
Geen idee wat daar in gebeurt, het is een custom functie die we niet in kunnen zien, aan jou de schone taak dat uit te zoeken
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php function get_the_post_thumbnail( $post_id = null, $size = 'post-thumbnail', $attr = '' ) { $post_id = ( null === $post_id ) ? get_the_ID() : $post_id; $post_thumbnail_id = get_post_thumbnail_id( $post_id ); $size = apply_filters( 'post_thumbnail_size', $size ); if ( $post_thumbnail_id ) { do_action( 'begin_fetch_post_thumbnail_html', $post_id, $post_thumbnail_id, $size ); // for "Just In Time" filtering of all of wp_get_attachment_image()'s filters if ( in_the_loop() ) update_post_thumbnail_cache(); $html = wp_get_attachment_image( $post_thumbnail_id, $size, false, $attr ); do_action( 'end_fetch_post_thumbnail_html', $post_id, $post_thumbnail_id, $size ); } else { $html = ''; } return apply_filters( 'post_thumbnail_html', $html, $post_id, $post_thumbnail_id, $size, $attr ); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <?php // Jquery. $('#maand_gegeven').change(function(){ alert($('#maand_gegeven').attr('value')); $.post("index.php", { maand : $('#maand_gegeven').attr('value'), jaar : $('#jaar_gegeven').attr('value') }); }); //html <select name='maand' id='maand_gegeven' style='width:150px;'> <option value='1'>Januari</option> </select> ?> |
1 2 3 4 5 6 7 8 9 10 11 | $('#maand_gegeven').change(function(){ alert($('#maand_gegeven').val()); $.post("index.php", { maand : $('#maand_gegeven').val(), jaar : $('#jaar_gegeven').val() }, function(data){ alert('succes!'); // doe iets nuttigs met data }); }); |
Om te testen had ik een echo var_dump($_POST); op de pagina gemaakt.quote:Op zaterdag 5 november 2011 06:47 schreef Light het volgende:
[ code verwijderd ]
En als je $.ajax() gebruikt, kun je ook een functie opgeven die moet afgaan als er een error is.
Verder kun je met de juiste tools (oa Firebug, of de ingebouwde developertools in Safari en Chrome) zien welke requests er gebeuren en welke antwoorden er door de server worden teruggestuurd. Anders moet je maar gokken wat er daadwerkelijk terug komt, en da's lastig met debuggen.
Verder heb ik geen idee wat je in php doet om te zien of je een POST of GET afhandelt, en wat je dan doet in die POST afhandeling.
Dit is mijn eerste keer dat ik het zo aanpak , ik heb firebug; maar snap niet waar ik moet kijken in firebug zelf.quote:Op zaterdag 5 november 2011 14:12 schreef Light het volgende:
Het resultaat van die var_dump() wordt niet vanzelf getoond, daar moet je moeite voor doen. Vandaar ook mijn tip om Firebug (of iets vergelijkbaars voor je browser) te gebruiken, dan kun je precies zien wat er teruggestuurd wordt naar de browser.
1 2 3 4 5 6 7 8 9 10 11 12 | <?php $('#maand_gegeven').change(function(){ alert($('#maand_gegeven').val()); $.post("index.php?action=totalen", { maand : $('#maand_gegeven').val(), jaar : $('#jaar_gegeven').val() }, function(data){ $("#wrapper").html(data); }); }); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | //html <select name='maand' id='maand_gegeven' style='width:150px;'> <option value='1'>Januari</option> </select> //maincms.js $('#maand_gegeven').change(function(){ $.post("ajax_include.php?totaal", { maand : $('#maand_gegeven').val(), jaar : $('#jaar_gegeven').val() }, function(data){ $("#totalen").html(data); }); }); // Ajax_include.php <script src="js/jquery-1.6.3.min.js" type="text/javascript"></script> <script src="js/maincms.js" type="text/javascript"></script> <?php include("includes.php"); /** File to include modules for Ajax. Only the files who are called from Jquery are found here. */ if(isset($_GET['totaal'])) { include("./forms/overzicht_jaar_maand.php"); } ?> |
quote:Op zondag 6 november 2011 05:23 schreef cablegunmaster het volgende:
De reden dat ik de Javascript opnieuw include is omdat je anders het maar een enkele keer kan uitvoeren.
Zonder deed hij het niet als ik het de eerste keer aanpaste.quote:
Nou kijk het probleem is als volgt;quote:Op zondag 6 november 2011 15:20 schreef GlowMouse het volgende:
dan roep je na $("#totalen").html(data); de relevante functies in je javascriptfile aan, die ook aangeroepen worden als je pagina voor het eerst geladen is
1 2 3 4 5 6 7 8 9 10 11 | <?php $('#maand_gegeven').change(function(){ $.post("ajax_include.php?totaal", { maand : $('#maand_gegeven').val(), jaar : $('#jaar_gegeven').val() }, function(data){ $("#totalen").html(data); }); }); ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |