Jump to content

Joob

Members
  • Content count

    198
  • Joined

  • Last visited

Everything posted by Joob

  1. Joob

    Ubuntu/Apache2/PHP problema URL Rewrite

    yap :/ .. fogo acho super estranho.. meti a mostrar os erros.. strip per-dir prefix: /var/www/site.com/ -> , referer: https://site.com/ applying pattern '.*' to uri '', referer: https://site.com/ RewriteCond: input='on' pattern='off' => not-matched, referer: https://site.com/ strip per-dir prefix: /var/www/site.com/ -> , referer: https://site.com/ applying pattern '.' to uri '', referer: https://site.com/ pass through /var/www/site.com/, referer: https://site.com/ strip per-dir prefix: /var/www/site.com/index.php -> index.php, referer: https://site.com/ applying pattern '.' to uri 'index.php', referer: https://site.com/ RewriteCond: input='/var/www/site.com/index.php' pattern='!-f' => not-matched, referer: https://site.com/ pass through /var/www/site.com/index.php, referer: https://site.com/ Vejo que no RewriteCond diz not-matched..
  2. Boas Malta, Já usei vários scripts em php no meu host e sempre sem problemas no "htaccess".. Agora tenho um script em que quando estou para fazer a instalação dele, ele esta-me a indicar sempre este problema URL Rewrite is not working on this server REQUIRED Requires URL Rewrite in order to fix the issue please follow instructions below and try again. on Apache : step 1 : create a file and name it ( .htaccess ) in this path ( /var/www/meusite.com/ ) step 2 : copy & paste the configuration below to the file ( .htaccess ) <IfModule mod_rewrite.c> AcceptPathInfo On RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php [L] </IfModule> Já coloquei dessa forma o IfModule e mesmo assim diz-me sempre REQUIRED .. Já colocar outras maneiras e nada também .. Até no Apache2 no "sites-available" meusite.conf tenho desta forma <Directory /var/www/meusite.com> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> Já fiz outras pequenas alterações para testar e nada também. Faço sempre restart ao apache2 e nada.. Já tentei ver outras formas e nada.. outros tutoriais e nada.. Tenho o mod_rewrite / a2enmod rewrite activo no ubuntu e a correr.. E a meu ver é tão simples, porque na verdade nunca tive problemas com o "htaccess".. mas desta vez estas-me a tramar.. sempre a dar erro.. não consigo fazer passar esse erro do URL Rewrite is not working on this server REQUIRED Não sei se me conseguem dar uma ajuda.. Abraço
  3. Joob

    Ubuntu/Apache2/PHP problema URL Rewrite

    Já desactivei o rewrite, já activei e nada.. :/ sempre com restart's.. Fogo incrivél.. Sempre a dar-me erro.. Já alterei no apache2 na zona do sites-available.. e tambem no .htaccess.. já tentei várias formas e nada.. O que é que poderá ser.. :/
  4. Olá Malta, Estou com um problema de actualização na tabela do usuário. Eu clico no Botão "exemplo", e se eu tiver desta forma if($_POST['type']=='add') { $database->query("update users set status=1 where user_id=".$user_id); $expiry_date = strtotime("+1 minute"); $database->query("insert into users (end_date,status,user_id) values ('".$expiry_date."',1,'".$user_id."')"); } Ele só actualiza o "status" do usuário, que passa de 0 para 1.. o end_date nem se mexe. Mas se eu fizer desta forma if($_POST['type']=='add') { $database->query("update users set status=1 where user_id=".$user_id); $expiry_date = strtotime("+1 minute"); $database->query("insert into users (end_date,status) values ('".$expiry_date."',1)"); } Ele actualiza o "end_date e o status".. mas cria-me sempre um novo utilizador.. Ele simplesmente não actualiza o "end_date e o status" ao mesmo tempo, para cada usuário já existente.. Não sei se deu para entender.. Abraço,
  5. Boas Malta, Estou tendo um problema com o chamar da DB com o SELECT. Preciso de fazer chamar o EMAIL, TIME_TS e o USERNAME, e que o TIME_TS faça a contagem dos 30 dias até ao dia 0. Deixo o código aqui <?php if($account->vip) : ?> <?php function setTimeout($fn, $timeout){ // sleep for $timeout milliseconds. sleep(($timeout/8000)); $fn.'()'; } // Some example function we want to run. function someFunctionToExecute(){ $result = $database->query('SELECT * FROM `users` WHERE `user_id`=$user_id'); while($row = $result->fetch_assoc()) { $time_ts = $row["time_ts"]; $user_email = $row["email"]; $username = $row["username"]; } if($time_ts>0){ $database->query('UPDATE `users` SET `time_ts`= $time_ts WHERE `user_id` = $user_id'); }else{ $emailContent = file_get_contents('emails/ts_information_users.html', true); $emailContent = str_replace("{{RESEND-ACTIVATION-EMAIL-CONTENT}}",$language->resend_activation->email->content,$emailContent); $emailContent = str_replace("{{RESEND-ACTIVATION-EMAIL-CONTENT-USER}}",$language->resend_activation->email->contentUser,$emailContent); $emailContent = str_replace("{{RESEND-ACTIVATION-EMAIL-CONTENT-ACTIVATE}}",$language->resend_activation->email->contentActivate,$emailContent); $emailContent = str_replace("{{RESEND-ACTIVATION-EMAIL-CONTENT-FOOTER}}",$language->footer_emails->footer,$emailContent); $emailContent = str_replace("{{EMAIL}}",$user_email,$emailContent); $emailContent = str_replace("{{RESEND-ACTIVATION-USERNAME}}",$username,$emailContent); $profile_account->vip == 0; sendmail($user_email, $language->resend_activation->email->title, $emailContent); } } // This will run the function after a 3 second sleep => // We're using an anonymous function to wrap the function // which we wish to execute. setTimeout(function(){ someFunctionToExecute(); }, 1000*3600*24); ?> <?php else : ?> <font color="#0C9620"><?= $language->store->vip->limit ?></font> <?php endif; ?> O problema é que ele não está actualizar o TIME_TS na DB nem fazer chamar o EMAIL e USERNAME.. Porque isto é, quando a pessoa clica no botão buy, supostamente seria para ficar a fazer uma contagem de 30 dias até ao dia 0, e quando chegasse ao dia 0, enviasse um email ao user. Deve existir um problema com function setTimeout($fn, $timeout){ // sleep for $timeout milliseconds. sleep(($timeout/8000)); $fn.'()'; } Porque se eu deixar esse código aberto, a página fica em looping e não para com o refresh. Abraço
  6. Joob

    Problema com SELECT/UPDATE da DB + Contagem 30

    Alguem me consegue dar uma ajudinha.. Abraco
  7. Joob

    Problema com SELECT/UPDATE da DB + Contagem 30

    Só que o problema é que a página fica em loop.. nem deixa entrar na página.. e nada é inserido na basedados.. nem como buscar a info à basedados.. Porque basta eu retirar o $fn.'()'; e o $fn, a página já não fica em looping mas não faz a função.
  8. Boas Malta, Básicamente queria fazer uma contagem de 30 dias, com desactivação do serviço em si, ou seja, Comprava e Fica do tipo "Faltam 30 Dias / Faltam 29 Dias, etc.." depois no fim dos dias, ficaria "Comprar Novamente" .. Sei que não está bem, precisava era de uma ajuda. Tenho desta forma a chamada <?php if($account->SERVICO1) : ?> <font color="#BB0306"> <?php if(isset($_POST['buy1'])) { $buy1 = date('Y-m-d H:i:s');; $buy1->add(new DateInterval('P30D')); echo "" . $buy1 . "\n"; } ?> </font> <?php else : ?> <font color="#0C9620"><?= $language->store->SERVICO1->no_limit ?></font> <?php endif; ?> Já coloquei de outra forma só para colocar como se tivesse comprado e aparecesse a diferenca dos 30 dias. ou seja, a data ficava com + 30 dias do dia de hoje por exemplo. Queria era adicionar a data da compra que quando clicassem no botão da compra de comprar, que adicionasse os dias que faltavam para renovar e quando chegasse ao fim, voltava novamente ao "Comprar" (exemplo).. Tenho o botão da chamada assim <a href="store/purchase/COMPRA1/<?= Security::csrf_get_session_token('url_token'); ?>" class="label label-success label-store btn btn-dark" data-confirm="<?= $language->store->confirm_purchase; ?>"> <?php printf($language->store->display->purchase); ?> </a> Se me conseguissem dar uma ajuda para colocar na database, acho que seria melhor para a configuração/registo do dia. Não sei se me fiz entender. Obrigado. Abraço,
  9. Joob

    Contagem de 30 Dias após Compra/Click

    Boas Novamente, Acho que ele não fazia os updates dos dias.. Tentei fazer deste formato .. <script type="text/javascript"> function countDown(){ $(".show").each(function() { var elm = $(this); var difTime=this.timestamp; var day=0,hours=0,minutes=0,seconds=0; if(difTime>0){ day=Math.floor(difTime/84600); hours=(Math.floor((difTime/3600))%24) + day*24 ; minutes=Math.floor(difTime/60)%60; seconds=Math.floor(difTime)%60; } else{ elm.removeClass("show"); //for remove class show } elm.html(hours+' H '+minutes+' M '+seconds+' S '); }); } function countDown_onLoad(){ $(".show").each(function() { this.timestamp = parseInt(this.firstChild.nodeValue,10); }); setInterval(countDown,1000); } $(document).ready(function() { countDown_onLoad(); }); </script> <font color="#BB0306"> <?php $show=mysql_query("SELECT * FROM `users` WHERE `time_ts` = 1"); while ($array = mysql_fetch_array($show)) { $timeStop = $array['timeStop']; //$deltaTimeServer = strtotime($timeStop)-strtotime(date('Y-m-d H:i:s')); $deltaTimeServer = strtotime($timeStop)-time(); echo "<td align = 'center'><div class=\"show\">".$deltaTimeServer."</div></td>"; } ?> </font> Ou seja, queria que quando se clicasse no botão <a href="store/purchase/COMPRA1/<?= Security::csrf_get_session_token('url_token'); ?>" class="label label-success label-store btn btn-dark" data-confirm="<?= $language->store->confirm_purchase; ?>"> <?php printf($language->store->display->purchase); ?> </a> que a contagem por exemplo começasse no dia em que se clicou e que apartir dai contasse os 30 dias, 30,29,28,27, etc.. e que quando chegasse ao 0 dizia "expirou".. e que desse update ao mesmo no mysql. Não sei se deu para entender .. Obrigado. Abraço
  10. Joob

    Contagem de 30 Dias após Compra/Click

    Boas @Matteus, Yap funcionou bacano, e simples.. Substitui o "EXPIROU" por variavel para fazer do genero.. quando chegar ao "$expirou" enviar um email automaticamente para o "$_POST['email'] (da pessoa que se registou)" e outro para mim de aviso "$to" .. Fazer algo deste jeito.. Chegou ao $expirou e envia um email para mim e para a pessoa registada. Este code nao é o que tenho mas ve se daria para fazer algo assim if(isset($_POST['expirou'])) { $to = 'name@yahoo.com'; $client = '$_POST['email']'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: webmaster@ourcompany.com' . "\r\n" . 'Reply-To: webmaster@ourcompany.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); sendmail($to, $client, $subject, $message, $headers); Obrigado Abraco
  11. Joob

    Adicionar as Tabelas

    Já resolvi o problema malta.. Obrigado ;)
  12. Joob

    Adicionar as Tabelas

    Boas Malta, Tenho a seguinte Base de Dados.. Mas não estou a conseguir adicionar a informação manualmente à base de dados.. dá-me sempre erros quando faço add. CREATE TABLE `premium` ( `id` int(11) NOT NULL, `uid` text NOT NULL, `endtime` int(11) NOT NULL, `nick` varchar(255) NOT NULL DEFAULT 'Brak' ); ALTER TABLE `premium` ADD PRIMARY KEY (`id`); ALTER TABLE `premium` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1; Neste caso refiro-me mais à tabela "premium" .. Obrigado, Abraço
  13. Joob

    Descodificação no Assunto

    Boas, Estou tendo um problema com a Descodificação do UTF-8 no Assunto.. <?=htmlentities($email['subject'])?> Imaginemos que no Assunto aparece um Smile, ele aparece com esta codificação E queria que aparecesse desta forma Já tentei dar umas pesquisas, mas não estão funcionando.. Abraço
  14. Joob

    Descodificação no Assunto

    Alguem me consegue dar alguma dica ? Abraco
  15. Joob

    CSS e JavaScript não funciona no browser do celular

    no Base_Url terás que colocar o teu URL.. o link do site.. nos meus browsers do meu pc também está desconfigurado.. tenta limpar só o cache do browser..
  16. Joob

    CSS e JavaScript não funciona no browser do celular

    Boas.. Testei o link, e a página Historia realmente não está funcionando - http://rrdesenvolvimento.xyz/historiaAgape.php Verifica se o directório da chamada do css e js etc.. está correcto..
  17. Joob

    Problema com Download dos Anexos

    Boas, Como posso implementar o seguinte código, no meu código a cima, para que seja possível efectuar guardar os anexos na pasta "attachment" para efectuar o download do ficheiro.. para que fique "www.site.com/attachment/imagem.jpg" etc.. $savedir = __DIR__ . '/attachment/'; $email = $emails->search('ALL'); if ($email) { rsort($email); foreach ($email as $myemail) { foreach ($myemail->getAttachments() as $attachment) { $savepath = $savedir . $attachment->getFilename(); file_put_contents($savepath, $attachment); } } }
  18. Joob

    Problema com Download dos Anexos

    Olá, Estou a ter dificuldade, em carregar os anexos para fazer download da imagem ou ficheiros.. o link fica sempre incorrecto, ou como se não existisse. Estou a trabalhar com SQLITE .. Já criei uma tabela para o attachment, porque terei que fazer ele ir buscar o attachment do respectivo id, que depois seja possível o download.. falta é fazê-lo chamar. Tenho o seguinte código $pdo = new PDO("sqlite:mydb.db"); $email = $pdo->query("SELECT * FROM `theEmails` WHERE `id`='$usersID'")->fetch(PDO::FETCH_ASSOC); $email_body = base64_decode($email['message']); $letter_html = ""; // $op_getKey = preg_match_all("/alternative; boundary=\"(.*)\"/", $email_body, $getKey); $op_getKey = preg_match_all("/boundary=\"(.*)\"/", $email_body, $getKey); $has_attachment = preg_match_all("/multipart\/mixed/", $email_body, $attachment); if ($op_getKey) { if ($has_attachment) { $mailParts = explode("--" . $getKey[1][1], $email_body); $attachParts = explode("--" . $getKey[1][0], $email_body); $get_attach_name=preg_match_all("/filename=\"(.*?)\"/", $attachParts[2], $attach_name); $get_attach_type=preg_match_all("/Content-Type: (.*?);/", $attachParts[2], $attach_type); $pure_code = explode("\n\n",$attachParts[2]); $pure_code = str_replace("\r","",$pure_code[1]); $pure_code = str_replace("\n","",$pure_code); }else{ $mailParts = explode("--" . $getKey[1][0], $email_body); } // $letter_text = str_replace('Content-Type: text/plain; charset="UTF-8"', '', $mailParts[1]); // echo $letter_text; $the_mail = $mailParts[2]; $to_replace = array( 'Content-Type: text/html; charset="UTF-8"', 'Content-Type: text/html; charset=UTF-8', 'Content-Type: text/html; charset="utf-8"', 'Content-Type: text/html; charset=utf-8', 'Content-Type: text/html; charset="iso-8859-1"', 'Content-Type: text/html; charset=iso-8859-1', 'Content-Type: text/html; charset="ISO-8859-1"', 'Content-Type: text/html; charset=ISO-8859-1', 'Content-Type: text/plain; charset="iso-8859-1"', ); foreach ($to_replace as $k => $v) { $the_mail = str_replace($to_replace[$k], '', $the_mail); } //$the_mail = str_replace('Content-Type: text/html; charset="UTF-8"', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset=UTF-8', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset="utf-8"', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset=utf-8', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset="iso-8859-1"', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset=iso-8859-1', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset="ISO-8859-1"', '', $the_mail); //$the_mail = str_replace('Content-Type: text/html; charset=ISO-8859-1', '', $the_mail); if (preg_match_all("/Content-Transfer-Encoding: quoted-printable/", $the_mail, $mailToDecode)) { $message_to_decode = str_replace('Content-Transfer-Encoding: quoted-printable', '', $the_mail); $letter_html = quoted_printable_decode($message_to_decode); }elseif(preg_match_all("/Content-Transfer-Encoding: base64/", $the_mail, $mailToDecode)){ $message_to_decode = str_replace('\r', '', $the_mail); $message_to_decode = str_replace('\n', '', $message_to_decode); $message_to_decode = str_replace('Content-Transfer-Encoding: base64', '', $message_to_decode); $letter_html = base64_decode($message_to_decode); // $letter_html = $message_to_decode; } else { $letter_html = $the_mail; } // echo $letter_html; } else { $mailParts = explode("\n\n", $email_body); foreach ($mailParts as $k => $v) { if ($k > 0) { $letter_html .= $v . "\n\n"; } } if(preg_match_all("/Content-Transfer-Encoding: base64/", $email_body, $mailToDecode)){ $message_to_decode = str_replace('\r', '', $letter_html); $message_to_decode = str_replace('\n', '', $message_to_decode); $letter_html = base64_decode($message_to_decode); // $letter_html = $message_to_decode; } Uso tambem o seguinte para chamar o link para o download dos anexos. Já experimentei com "href="www.site.com/<?=$attach_name[1][0]?>" mas mesmo assim o link fica bem, mas não faz a chamada do anexo. Ele poderia ficar com os ficheiros salvos na pasta "anexos" e depois serem apagados passado 1 dia ou 5 dias. <a target="_blank" href="https://site.com/attachments/<?=$attach_name[1][0]?>" data-target="<?=$id?>"> Tenho ainda um outro ficheiro com o seguinte (respectivo ao attachment) <?php if (isset($_GET['attachment'])) { } ?> Não sei se deu para entender. Fico aguardar uma ajudinha ;) Obrigado, Abraço
  19. Joob

    Subject não detecta UTF-8

    Boas, Problema com UTF-8 no assunto de quando recebo um email.. <?=htmlentities($m['subject'])?> Estou a fazer a chamada do assunto, recebo tudo ok.. mas aparece-me desta forma quando são caracteres tipo smiles etc.. =?UTF-8?Q?Fwd=3A_=F0=9F=94=B4_Google_Developers_is_live Será que dá para definir o UTF-8 no "htmlentities" ? Abraço
  20. Joob

    Problema com Download dos Anexos

    Será que me conseguem dar uma ajudinha.. ? Abraço
  21. Joob

    Delete Automático após 3600seg

    Obrigadão Kinzinho.. Feito em SQLITE... #!/usr/bin/python import sqlite3 conn = sqlite3.connect('test.db') print "Opened database successfully"; conn.execute("DELETE from COMPANY where ID = 2;") conn.commit() print "Total number of rows deleted :", conn.total_changes print "Operation done successfully"; conn.close() Resultou na Perfeição ! Obrigado pelas Dicas
  22. Joob

    Delete Automático após 3600seg

    Boas, Como posso fazer com que o conteúdo da tabela "message" de cada "id", seja eliminada após 3600seg.. if (isset($_GET['message'])) { $email_body = $email['message']; setcookie('message', base64_encode($email_body), time() + (3600), "/"); } if (isset($_GET['del'])) { $del = $_GET['del']; $pdo->query("DELETE FROM `myemail` WHERE `message` = '$del'"); } Estava aqui a tentar em relação a algo identico que tenho a isto, de ele mudar o email após 3600s.. Queria adaptar tambem as mensagens e que fosse eliminadas. Abraço
  23. Joob

    Delete Automático após 3600seg

    Hmm neste caso terei que usar algo assim 0 3 * * * php /path-to-your-file/file.php Ficheiro "file.php" <?php @session_start(); $pdo = new PDO("sqlite:db.db"); if (isset($_GET['del'])) { $del = $_GET['del']; $pdo->query("DELETE FROM `myemail` WHERE `message` = '$del'"); } ?> Certo ? Ele irá executar sem ter que usar um botão de click ?
  24. Joob

    Delete Automático após 3600seg

    Ah já sei.. Terei que usar um Cron deste tipo, sem a criação de outro ficheiro 0 23 * * * * root /usr/bin/mysql -e "DELETE FROM myemail WHERE id < NOW() - INTERVAL 30 MINUTE" Mas neste caso estou a utilizar SQLITE e não mysql.. Como faço a execução da "db" do SQLITE ?
  25. Joob

    Contagem + Aleatória

    Sim, isso entendi e resulta bem o teu script.. só que eu queria implementar esse teu codigo no meu codigo.. e nao estou a conseguir faze-lo .. é devido a isso ..
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.