rfamelli 0 Denunciar post Postado Outubro 21, 2011 Oi pessoal, já vi algumas dicas aqui sobre como retirar a ultima virgula em um array, mas nao consegui de jeito nenhum entender como fazer isso no meu script, alguem pode me ajudar? var data = { <? while($row = mysql_fetch_array($result)) { $id = $row["id"]; $imagem = utf8_encode($row["imagem_grd"]); $titulo = utf8_encode ($row["titulo"]); ?> '<? echo "$imagem_grd"; ?>.jpg': { caption: '<? echo "$titulo"; ?>' }, <? }?>}; Agradeõ muito desde já Compartilhar este post Link para o post Compartilhar em outros sites
Fabio Pratta 14 Denunciar post Postado Outubro 21, 2011 assim: <?php $string = 'nome,teste,fabio'; $sem_virgula = str_replace(",","",$string); echo $sem_virgula; Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Outubro 21, 2011 a forma mais simples é assim: <?php $arr = Array(); while($row = mysql_fetch_array($result)) { $id = $row["id"]; $imagem = utf8_encode($row["imagem_grd"]); $titulo = utf8_encode ($row["titulo"]); $arr[] = '{"'.$imagem_grd.'.jpg": { caption: "'.$titulo.'" }, }'.PHP_EOL; }//fecha while echo implode( ',', $arr ); se é q entendi o jSON q você tem q gerar Compartilhar este post Link para o post Compartilhar em outros sites
rfamelli 0 Denunciar post Postado Outubro 21, 2011 Muito Obrigada pelas prontas respostas! estranho mesmo colocando o implode o codigo continuou com uma virgula no final e nao apareceu nada. E outra coisa que no entendi é como (no caso destes codigos que voces me passaram) substituir o "data" no slideshow como mostro no codigo abaixo: Se vocês puderem me ajudar... o codigo completo: <script> window.addEvent('domready', function(){ var data = { '1.jpg': { caption: 'Villa' }, '2.jpg': { caption: 'Villa' }, '3.jpg': { caption: 'Villa' }, '7.jpg': { caption: 'Praia' }, '8.jpg': { caption: 'Praia' }, '9.jpg': { caption: 'Praia' }, '10.jpg': { caption: 'Praia' }, '11.jpg': { caption: 'Praia' }}; new Slideshow.KenBurns('kenburns', data, { duration: 3000, height: 264, hu: 'images/', width: 470 }); }); </script> Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Outubro 21, 2011 aparentemente ta certo.. '11.jpg': { caption: 'Praia' }}; nnao tem virgula no final não. como ficou teu php ? de q virgula você ta falando ? para debugar js, aparte Ctrl+Shift+J no firefox: http://wbruno.com.br/blog/2011/03/31/como-debugar-javascript-firefox-erros-comuns/ Compartilhar este post Link para o post Compartilhar em outros sites
rfamelli 0 Denunciar post Postado Outubro 21, 2011 Oi Willian, obrigada pela ajuda! coloquei assim no php <script> window.addEvent('domready', function(){ $arr = Array(); <? while($row = mysql_fetch_array($result)) { $id = $row["id"]; $imagem = utf8_encode($row["imagem_grd"]); $titulo = utf8_encode ($row["titulo"]); $arr[] = '{"'.$imagem.'.jpg": { caption: "'.$titulo.'" }, }'.PHP_EOL; }//fecha while echo implode( ',', $arr ); ?> new Slideshow.KenBurns('kenburns', <? echo $arr ?>, { duration: 3000, height: 264, hu: 'images/', width: 470 }); }); </script> e aparece assim no html <script> window.addEvent('domready', function(){ $arr = Array(); {"1.jpg": { caption: "Villa" }, } ,{"2.jpg": { caption: "Villa" }, } ,{"3.jpg": { caption: "Villa" }, } ,{"7.jpg": { caption: "Praia" }, } ,{"8.jpg": { caption: "Praia" }, } ,{"9.jpg": { caption: "Praia" }, } ,{"10.jpg": { caption: "Praia" }, } ,{"11.jpg": { caption: "Praia" }, } new Slideshow.KenBurns('kenburns', <? echo $arr ?>, { duration: 3000, height: 264, hu: 'images/', width: 470 }); }); </script> Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Outubro 21, 2011 altere esse trecho: $arr[] = '{"'.$imagem.'.jpg": { caption: "'.$titulo.'" }, }'.PHP_EOL; para: $arr[] = '"'.$imagem.'.jpg": { caption: "'.$titulo.'" }'.PHP_EOL; Compartilhar este post Link para o post Compartilhar em outros sites
rfamelli 0 Denunciar post Postado Outubro 21, 2011 Hum, agora sairam todas as virgulas..<script> window.addEvent('domready', function(){ $arr = Array(); "1.jpg": { caption: "Villa" } ,"2.jpg": { caption: "Villa" } ,"3.jpg": { caption: "Villa" } ,"7.jpg": { caption: "Praia" } ,"8.jpg": { caption: "Praia" } ,"9.jpg": { caption: "Praia" } ,"10.jpg": { caption: "Praia" } ,"11.jpg": { caption: "Praia" } new Slideshow.KenBurns('kenburns', Array, { duration: 3000, height: 264, hu: 'images/', width: 470 }); }); </script> Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Outubro 21, 2011 as virgulas tão ali.. pelo q você postou está certinho. antes ou depois, tanto faz. se você quiser elas depois, faça assim: $arr[] = PHP_EOL.'"'.$imagem.'.jpg": { caption: "'.$titulo.'" }'; Compartilhar este post Link para o post Compartilhar em outros sites
rfamelli 0 Denunciar post Postado Outubro 21, 2011 desculpe, verdade, as virgulas estao no começo da frase, legal, valeu! é que como continua nao aparecendo o slide show nao me atentei a isso. e essa é a questao nao consegui substituir o "var data" no script do slide show. veja antes tinha: var data = { '1.jpg': { caption: 'Villa' }... new Slideshow.KenBurns('kenburns', data, { duration: 3000, height: 264, hu: 'images/', width: 470 }); eu tentei colocar new Slideshow.KenBurns('kenburns', <? echo $arr; ?>, { duration: 3000, height: 264, hu: 'images/', width: 470 }); e fica aparecendo a palavra "Array" no lugar, lá no html. Você saberia me auxiliar com isso? Muito obrigada!!! Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Outubro 21, 2011 dá o echo no implode cara.. igualzinho ue: <?php echo implode( ',', $arr ); ?> Compartilhar este post Link para o post Compartilhar em outros sites
netShot 1 Denunciar post Postado Outubro 22, 2011 Já tentou usar o json_encode? Compartilhar este post Link para o post Compartilhar em outros sites