Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''Php''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento Web
    • Desenvolvimento frontend
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets e outros ambientes
    • Desenvolvimento com Wordpress
    • Desenvolvimento de apps
    • Desenvolvimento ágil
    • Desenvolvimento de Games
    • Banco de Dados
    • Design e UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • Boteco iMasters

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 1790 registros

  1. Rodrigo V

    Duvida sobre requisição AJAX

    Boa tarde pessoal, sou novo aqui e não sei se o conteúdo que estou postando está no lugar correto. Estou com uma dúvida no ajax de uma requisição onde o retorno do banco popula o meu select, mas o problema é que meu select devido possuir muitos dados ( em torno de 3000 options) quando retorna o navegador da uma leve travada mas no navegado do celular(com android 9) e trava ao ponto de ter que fechar aplicação. Acredito que teria que fazer um option que carregue por demanda algo assim, mas não sei se o meu pensamento está correto, e se estiver não sei como fazer... se alguém conseguir me ajudar agradeço. segue abaixo códigos: onde é populado o select <div class="col-md-2"> <select class="btao1" id="resultados"></select> <input id="btao1" type="submit" value="Conferir" /> </div> requisicao ajax <script> $(document).ready(function() { select_resultados() }); function select_resultados() { $.ajax({ url: 'select_resultados.php', method: 'GET', success: function(dados) { $('#resultados').html(dados); } }); } </script> pagina php que busca no banco $query_select = "SELECT * FROM resultados ORDER BY id DESC"; $result_select = $connect->prepare($query_select); $result_select->execute(); while($resultado_select = $result_select->fetch(PDO::FETCH_ASSOC)){ extract($resultado_select); echo ' <option value='.$id.'>'.$name.'</option>'; }
  2. Olá, na parte de enviar eu conseguir, mas manter até terminar o cadastro eu não conseguir. Eu vou contar toda a história para ficar mais claro possível. Eu precisei implementar um Upload de qualquer imagem ou PDF na página de solicitar compras. O site utiliza AngularJS, a primeira versão do Angular. Eu tentei fazer sem depender de PHP, mas na internet achava só a parte de Front-End e ninguém sabia fazer no Back-End. Então eu resolvi fazer com PHP mesmo. Nó código PHP, ele aceita todos as extensões de imagens mais o PDF e é possível envia-los todos de uma vez na quantidade que quiser. Todos os arquivos serão renomeados, contendo no nome o ID do usuário logado pego pela função javascript, o dia do mês, o mês, o ano, o dia da semana, a hora, o minuto, o segundo, se é AM ou PM e uma numeração aleatório. O arquivo PDF vai continuar sendo PDF e todas as imagens serão JPG. No final, todos serão enviados para uma pasta chamada upload. Só que agora eu preciso jogar de volta para página para salvar os novos nomes dos arquivos para continuar o cadastro da solicitação de compras. Como AngularJS utiliza Javascript, eu tentei usa-lo dentro do PHP utilizando EOF, mas não tive resultado. Eu só consigo com HTML com as diretivas do AngularJS. Na parte do API, nos atributos, eu declarei "nomeArquivo: []," , para salvar os nomes dos arquivos. Seguem o código. <div class="row"> <div class="col-sm-12 col-md-6 "> <div class="upload_form_cont"> <form id="upload_form" enctype="multipart/form-data" method="post" action="/profile-upload"> <div> <div><label for="image_file">Selecione o arquivo de imagem</label></div> <div><input type="file" name="image_file" id="image_file" accept="image/*" onchange="fileSelected();" /></div> </div> <div> <input type="button" value="Upload" onclick="startUploading()" /> </div> <div id="fileinfo"> <div id="filename"></div> <div id="filesize"></div> <div id="filetype"></div> <div id="filedim"></div> </div> <div id="error">Você deve selecionar apenas arquivos de imagem válidos!</div> <div id="error2">Ocorreu um erro ao enviar o arquivo</div> <div id="abort">O upload foi cancelado pelo usuário ou o navegador interrompeu a conexão</div> <div id="warnsize">Seu arquivo é muito grande. Não podemos aceitar isso. Selecione arquivos pequenos</div> <div id="progress_info"> <div id="progress"></div> <div id="progress_percent">&nbsp;</div> <div class="clear_both"></div> <div> <div id="speed">&nbsp;</div> <div id="remaining">&nbsp;</div> <div id="b_transfered">&nbsp;</div> <div class="clear_both"></div> </div> <div id="upload_response"></div> </div> </form> </div> </div> </div> upload.php <?php function bytesToSize1024($bytes, $precision = 2) { $unit = array('B','KB','MB'); return @round($bytes / pow(1024, ($i = floor(log($bytes, 1024)))), $precision).' '.$unit[$i]; } //Pega o id do usuário logado $id_url = $_GET['id']; // Numero de campos de upload $numeroCampos = count($_FILES['image_file']['name']); // Tamanho máximo do arquivo (em bytes) $tamanhoMaximo = 1024*1024*2; // Extensões aceitas $extensoes = array(".jpg", "jpeg", ".gif", ".png", ".pdf", ".bmp", ".pdf", ".tiff"); //Local da pasta $_UP['pasta'] = '../upload/'; $substituir = false; for ($i = 0; $i < $numeroCampos; $i++) { // Informações do arquivo enviado $sFileName = $_FILES['image_file']['name'][$i]; $sSize = $_FILES['image_file']['size'][$i]; $sFileSize = bytesToSize1024($sSize, 1); $nomeTemporario = $_FILES['image_file']['tmp_name'][$i]; // Verifica se o arquivo foi colocado no campo if (!empty($sFileName)) { $erro = false; // Verifica se o tamanho do arquivo é maior que o permitido if ($sSize > $tamanhoMaximo) { $erro = "O arquivo " . $sFileName . " não deve ultrapassar " . $tamanhoMaximo. " bytes"; } // Verifica se a extensão está entre as aceitas elseif (!in_array(strrchr($sFileName, "."), $extensoes)) { $erro = "A extensão do arquivo <b>" . $sFileName . "</b> não é válida"; } // Verifica se o arquivo existe e se é para substituir elseif (file_exists($_UP['pasta'] . $sFileName) and !$substituir) { $erro = "O arquivo <b>" . $sFileName . "</b> já existe"; } else{ //Pega a extensão do arquivo $TipoExtensao = pathinfo($sFileName, PATHINFO_EXTENSION); // O arquivo passou em todas as verificações, hora de tentar movê-lo para a pasta // Primeiro verifica se deve trocar o nome do arquivo $unixTime = time(); $timeZone = new \DateTimeZone('America/Sao_Paulo'); $time = new \DateTime(); $time->setTimestamp($unixTime)->setTimezone($timeZone); $formattedTime = $time->format('d-m-Y_l_h-i-s-a'); $aleatorio = rand(); if($TipoExtensao == 'pdf'){ $nome_final = $id_url .'_'. $formattedTime .'_'. $aleatorio .'.pdf'; }else{ $nome_final = $id_url .'_'. $formattedTime .'_'. $aleatorio .'.jpg'; } // Depois verifica se é possível mover o arquivo para a pasta escolhida if (move_uploaded_file($nomeTemporario, $_UP['pasta'] . $nome_final)) { // Upload efetuado com sucesso, exibe uma mensagem e um link para o arquivo echo "Upload do arquivo ".$sFileName." foi efetuado com sucesso!"; echo "</br>"; echo<<<EOF <p>Eu tentei implementar o retorno da página aqui!</p> <p></br></p> <p></br></p> EOF; } else { // Não foi possível fazer o upload, provavelmente a pasta está incorreta echo "Não foi possível enviar o arquivo, tente novamente"; echo "</br>"; } } } else { echo "Selecione algum arquivo de imagem ou PDF para fazero upload."; } } ?>
  3. Danilo CS

    Incluir PHP personalizado no Wordpress

    Olá Uma das formas que encontrei para incluir nosso próprio PHP nas páginas Wordpress foi por meio desse tutorial https://www.icloud.com.br/2357/criar-uma-pagina-no-site-wordpress-com-um-arquivo-php Mas um colega disse que essa técnica não é segura. Você concorda com isso? <?php /* Template Name: Nome da Página */ ?> <?php get_header(); ?>
  4. belann

    Problemas com variáveis PHP

    Olá! Estou tentando fazer upload de arquivo e estou tendo problemas com as variáveis dá o erro: Notice: Undefined index: fileimg Notice: Undefined index: uploadfile : O código segue abaixo html <input type="file" accept="image/*" name="fileimg" id="lerarq" class="jump"> php <?php $uploaddir = "imagem/"; if (isset($_POST)) { $uploadfile = $uploaddir . basename($_FILES["fileimg"]["name"]); $imgFileType = strtolower(pathinfo($uploadfile,PATHINFO_EXTENSION)); $checkimg = getimagesize($_FILES["uploadfile"]["tmp_name"]); if($check !== false) { if (!file_exists($target_file)) { if ($_FILES["fileToUpload"]["size"] <= 500000) { if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $uploadfile)) { echo "Arquivo válido e enviado com sucesso.\n"; } else { echo "Possível ataque de upload de arquivo!\n"; } } else { echo "Arquivo muito grande"; } } else { echo "Arquivo já existe"; } } else { echo "Arquivo não é uma imagem"; } } else { echo "Selecione uma imagem" . $arquivo; } ?>
  5. Eu gostaria de saber como fazer para preencher automaticamente(pré populado) uma página de pagamentos a partir dos dados inseridos em uma página anterior pelo plugin do contact form 7 do wordpress Os campos até são preenchidos, mas não com a informação inserido no formulário mas sim com a id mesmo que coloquei na URL <label> Seu nome [text nome id:nome class:nome] </label> <label> Seu DDD [tel DDD id:DDD class:DDD]</label> <label> Seu Celular [tel celular id:celular class:celular]</label> <label> Seu e-mail </label> <label> Assunto [text* your-subject] </label> <label> Sua mensagem (opcional) [textarea your-message] </label> [submit "Enviar"] <script> document.addEventListener('wpcf7mailsent', function (Event) { location = 'https://pay.hotmart.com/A48773288I?ap=5181&name=id:nome&phoneac=id:ddd&phonenumber=id:celular&email=id:email'; }, false); </script>
  6. Caio Vargas

    Filtro de busca

    Fala pessoal todo tranquilo? Estou com um pequeno problema em um filtro que estou desenvolvendo para uma imobiliária. Seguinte eu tenho 3 checkbox venda mensal diária . E tenho 3 selects com cidade balneário e tipo de imóvel O meu filtro funciona da seguinte forma o primeiro checkbox sempre vem marcado que e o venda aí quando eu clicar no botão buscar ele vai buscar os imóveis venda Aí se o cara clicar em select cidade ele vai buscar no banco via ajax e me trás o resultado via sessão montando a query Porém ele só vai sentar no Ajax quanto eu selecionar um checkbox a dúvida e como eu posso fazer isso já que eu tô usando http build query
  7. violin101

    PHP+Codeigniter - Orientação referente QrCode

    Caros amigos, saudações... Desculpa em recorrer a ajuda dos amigos, gostaria de uma ajuda e orientação. Estou escrevendo uma Rotina para o Sistema Gerar e Imprimir QrCode, até aqui tudo bem. A minha dúvida é o seguinte: ---[ em algumas pesquisas verifiquei que alguns QrCode tem a opção de Colocar um LOGO no centro. Como consigo fazer essa inclusão do LOGO no QrCode ? Se colocar o Logo no QrCode, prejudica a sua leitura ? O meu código está assim: <?php /* *Função para Gerar o QrCode do ID do Produto */ function qrcode($id = null){ //Código do Cliente Logado $codCli = $this->session->userdata('idCli'); //SQL para Pesquisar por ID do Produto $query = $this->db->query("SELECT an.idProdutos, an.cod_interno, an.descricao, an.id_clientes, cc.idClientes FROM produtos an INNER JOIN clientes cc ON cc.idClientes = an.id_clientes WHERE an.idProdutos = '$id' AND an.id_clientes = '$codCli' "); //Passa as Informações do Produto foreach ($query->result() as $row){ $codId = $row->idProdutos; $codInt = $row->cod_interno; $descr = $row->descricao; } //Variável[dq] Criada para Passar as Informações para o QrCode $dq = $codId."\n"; $dq .= $codInt."\n"; $dq .= $descr."\n"; //Gerar o QrCode qrcode::png( $dq, $outlife = false, $level = QR_ECLEVEL_L, $size = 6, $margin = 1 ); } ?> Grato, Cesar
  8. Thiago Duarte

    meu pagina de atualizar nao funciona

    não sei porque meu sistema não está funcionando, alguém pode me ajudar? Quero atualizar o nome e email <body> <?php require('db.php'); if (isset($_POST['update'])) { $id = $_POST['id']; $name = $_POST['name']; $last_name = $_POST['last_name']; $email = $_POST['email']; mysqli_query($db, "UPDATE usuario SET name='$name', last_name='$last_name', email='$email' WHERE id=$id"); $_SESSION['message'] = "Address updated!"; header('location: profile.php'); } ?> html code here.... <form action="" class="form-horizontal form-material"> <div class="form-group"> <label class="col-md-12">First Name</label> <div class="col-md-12"> <input type="text" name="name" placeholder="" class="form-control form-control-line"> </div> </div> <div class="form-group"> <label class="col-md-12">Last Name</label> <div class="col-md-12"> <input type="text" name="last_name" placeholder="" class="form-control form-control-line"> </div> </div> <div class="form-group"> <label for="example-email" class="col-md-12">Email</label> <div class="col-md-12"> <input type="email" name="email" placeholder="" class="form-control form-control-line" id="example-email"> </div> </div> <!-- <div class="form-group"> <label class="col-sm-12">Select Country</label> <div class="col-sm-12"> <select class="form-control form-control-line"> <option>Usa</option> <option>Canada</option> </select> </div> </div> --> <div class="form-group"> <div class="col-sm-12"> <button class="btn btn-success">Update Profile</button> </div> </div> </form> html code here.... <?php } ?> <?php include 'footer.php'; ?>
  9. manolegal

    Leitura de vários arquivos em sequência

    Bom dia. Preciso ler e gravar vários arquivos .txt em sequência. Lendo somente 1 arquivo estou conseguindo: $caminho = ("C:/meu_diretorio"); $arquivo = fopen ("$caminho/um_arquivo.txt" , 'r'); while(!feof($arquivo)) { $linha = fgets($arquivo); $tr = substr($linha, 0, 2); $tr_3 = substr($linha, 0, 3); $Sql_cab = "INSERT INTO ..."; } Porém, preciso adaptar para mais de um arquivo. Estou tentando da seguinte forma, porém não estou conseguindo: $caminho = ("C:/meu_diretorio"); $arquivos = array_values(array_filter(scandir($caminho), function($arquivo) use ($caminho) { return !is_dir($caminho . '/' . $arquivo); })); foreach($arquivos as $arquivo){ $teste = fopen ($arquivo, 'r'); while(!feof($teste)) { $linha[] = fgets($teste); // seria isto? $tr = substr($linha, 0, 2); $tr_3 = substr($linha, 0, 3); $Sql_cab = "INSERT INTO ..."; } } Preciso ler o primeiro arquivo e gravar no BD, depois o segundo arquivo e assim por diante. Desde já agradeço pela ajuda.
  10. Olá, bom dia. Tenho um formulário que envia as informações direto para o e-mail, implementei um campo para anexos, mas só recebo um anexo, gostaria de saber como enviar mais de um anexo por este mesmo input, se possível. (o input já recebe mais de um arquivo) Obrigada. segue o código funcionando. com apenas um anexo. <?php /* Valores recebidos do formulário */ $arquivo = $_FILES['arquivo']; $nome = $_POST['nomedoolicitante']; $email = $_POST['emailsolitante']; $descricao = $_POST['descriçõesInstitucional']; $consideracoes = $_POST['consideraçõesInstitucional']; $to = xx'; $from = "xx"; // Deve ser um email válido do domínio /* Cabeçalho da mensagem */ $boundary = "XYZ-" . date("dmYis") . "-ZYX"; $headers = "MIME-Version: 1.0\n"; $headers.= "From: $nome <$email> \n"; $headers.= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n"; $headers.= "$boundary\n"; /* Layout da mensagem */ $subject = "Contato pelo site "; $corpo_mensagem = " <html> <p><b>Referente ao Solicitante: </b></p> <p><b>Nome: </b>$nome</p> <p><b>E-mail: </b>$email</p> <p><b>Referente ao Material Institucioinal: </b></p> <p><b>Descrição: </b>$descricao</p> <p><b>Considerações: </b>$consideracoes</p> </html> "; if(file_exists($arquivo["tmp_name"]) and !empty($arquivo)){ $fp = fopen($_FILES["arquivo"]["tmp_name"],"rb"); // Abri o arquivo enviado. $anexo = fread($fp,filesize($_FILES["arquivo"]["tmp_name"])); // Le o arquivo aberto na linha anterior $anexo = base64_encode($anexo); // Codifica os dados com MIME para o e-mail fclose($fp); // Fecha o arquivo aberto anteriormente $anexo = chunk_split($anexo); // Divide a variável do arquivo em pequenos pedaços para poder enviar $mensagem = "--$boundary\n"; // Nas linhas abaixo possuem os parâmetros de formatação e codificação, juntamente com a inclusão do arquivo anexado no corpo da mensagem $mensagem.= "Content-Transfer-Encoding: 8bits\n"; $mensagem.= "Content-Type: text/html; charset=\"utf-8\"\n\n"; $mensagem.= "$corpo_mensagem\n"; $mensagem.= "--$boundary\n"; $mensagem.= "Content-Type: ".$arquivo["type"]."\n"; $mensagem.= "Content-Disposition: attachment; filename=\"".$arquivo["name"]."\"\n"; $mensagem.= "Content-Transfer-Encoding: base64\n\n"; $mensagem.= "$anexo\n"; $mensagem.= "--$boundary--\r\n"; } else // Caso não tenha anexo { $mensagem = "--$boundary\n"; $mensagem.= "Content-Transfer-Encoding: 8bits\n"; $mensagem.= "Content-Type: text/html; charset=\"utf-8\"\n\n"; $mensagem.= "$corpo_mensagem\n"; } /* Função que envia a mensagem */ if(mail($to, $subject, $mensagem, $headers)) { echo "<meta http-equiv='refresh' content='10;URL=../OBRIGADO!.html'>"; } else { echo "<br><br><center><b><font color='red'>Ocorreu um erro ao enviar a mensagem!"; } ?>
  11. Caio Vargas

    [Resolvido] Múltiplos checkbox

    Meus amigos estou com um problema que não consigo resolver as vezes e coisas simples mais não encaixa na minha cabeca eu tenho multiplos checkbox onde cada um tem o valor porem eu tô salvando isso em uma tabela única separado por vírgula não sei se isso e correto mais na hora de recuperar e colocar como checado não vai pq ele retorna os valores tudo jundo mesmo dando um explode não vai
  12. jgasper

    Inclusão de + itens no banco

    Olá, estou desenvolvendo um sistema de requisições para almoxarifado. Na tela de requisição o usuário terá a opção de incluir o item + quantidade que deseja, e haverá um botão + para poder adicionar mais itens. Porém não consigo pensar em como fazer isso ir para o banco e como salvar isso no pedido. Alguém tem algum exemplo ou pode me ajudar nesse caso?
  13. Me ajude o plugin esta tudo certo só nao esta aparecendo o numero da residência e o numero do telefone quando finaliza a compra, tem um botão ao finalizar a compra que manda a ordem de checkout pelo whatsapp .. Preciso que apareça esses campos .. <?php // Make sure we don't expose any info if called directly if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } /** * Plugin Name: WFCM Whatsapp Checkout * Description: Whatsapp checkout plugin for WFCM. * Version: 1.1 * Author: aditbaco, Plonknimbuzz * Author URI: https://github.com/aditbaco/WA-Checkout-WCFM-Woocommerce * Requires at least Woocommerce : 4.1 * Requires at least WCFM Front End Manager : 6.4 * Requires at least WCFM Marketplace Multi Vendor : 3.4 * Tested up to Wordpress : 5.5 * License: GPLv2 or later * License URI: https://www.gnu.org/licenses/gpl-2.0.html */ // Check if WooCommerce is active function WCFMWC_check_woocommece_active(){ if ( ! is_plugin_active( 'woocommerce/woocommerce.php' ) ) { echo "<div class='error'><p><strong>WCFM Whatsapp Checkout</strong> requires <strong>WooCommerce plugin.</strong>&nbsp; Please <a href='https://wordpress.org/plugins/woocommerce' target=_blank>install</a> and activate it.</p></div>"; } } add_action('admin_notices', 'WCFMWC_check_woocommece_active'); // Check if WCFM is active function WCFMWC_check_wcmv_active(){ if ( ! is_plugin_active( 'wc-multivendor-marketplace/wc-multivendor-marketplace.php' ) ) { echo "<div class='error'><p><strong>WCFM Whatsapp Checkout</strong> requires <strong>WC Multivendor Marketplace plugin.</strong>&nbsp; Please <a href='https://wordpress.org/plugins/wc-multivendor-marketplace' target=_blank>install</a> and activate it.</p></div>"; } } add_action('admin_notices', 'WCFMWC_check_wcmv_active'); // Check if WCFM is active function WCFMWC_check_wcfm_active(){ if ( ! is_plugin_active( 'wc-frontend-manager/wc_frontend_manager.php' ) ) { echo "<div class='error'><p><strong>WCFM Whatsapp Checkout</strong> requires <strong>WC Multivendor Marketplace - Frontend Manager plugin.</strong>&nbsp; Please <a href='https://wordpress.org/plugins/wc-frontend-manager' target=_blank>install</a> and activate it.</p></div>"; } } add_action('admin_notices', 'WCFMWC_check_wcfm_active'); //register Whatsapp number to vendors store setting add_filter( 'wcfm_marketplace_settings_fields_general', 'vendor_store_custom_fields' ); function vendor_store_custom_fields($settings_fields_general) { global $WCFM, $WCFMmp, $wp; if(isset($settings_fields_general['banner'])){ return $settings_fields_general; //fix bug on admin store manage page } if( current_user_can('manage_woocommerce') ) { $van_cur_url = add_query_arg( array(), $wp->request ); $van_vendorid = substr( $van_cur_url, strrpos( $van_cur_url, '/' ) + 1 ); $user_id = intval( $van_vendorid ); } else { $user_id = apply_filters( 'wcfm_current_vendor_id', get_current_user_id() ); } //Register Whatsapp Number button and option in vendor's profile $store_whatsapp_opt = array( 'yes' => __( 'Yes', 'wc-frontend-manager' ), 'no' => __( 'No', 'wc-frontend-manager' ) ); $vendor_data = get_user_meta( $user_id, 'wcfmmp_profile_settings', true ); $store_whatsapp_show = isset( $vendor_data['store_whatsapp_show'] ) ? $vendor_data['store_whatsapp_show'] : 'no'; $store_whatsapp = isset( $vendor_data['store_whatsapp_number'] ) ? $vendor_data['store_whatsapp_number'] : null; $settings_fields_general["store_whatsapp_number"] = array('label' => __('Whatsapp Number', 'wc-frontend-manager') , 'type' => 'text', 'class' => 'wcfm-text wcfm_ele ', 'label_class' => 'wcfm_title', 'value' => $store_whatsapp ); $settings_fields_general["store_whatsapp_show"] = array('label' => __('Show Whatsapp button on Checkout', 'wc-frontend-manager') , 'type' => 'select', 'options' => $store_whatsapp_opt, 'class' => 'wcfm-select wcfm_ele', 'label_class' => 'wcfm_title', 'value' => $store_whatsapp_show ); return $settings_fields_general; } //Register Show whatsapp number on vendor's page add_action( 'after_wcfmmp_sold_by_info_product_page', 'cus_after_wcfmmp_sold_by_info_product_page' ); function cus_after_wcfmmp_sold_by_info_product_page( $vendor_id ) { $vendor_data = get_user_meta( $vendor_id, 'wcfmmp_profile_settings', true ); $whatsapp = isset($vendor_data['store_whatsapp_number'])?$vendor_data['store_whatsapp_number']:null; if( isset($vendor_data['store_whatsapp_show']) && $vendor_data['store_whatsapp_show'] == 'yes' && !empty($whatsapp)) { echo '<div class="wcfmmp_store_tab_info wcfmmp_store_info_address"><i class="wcfmfa fa-phone" aria-hidden="true"></i><span>' . $whatsapp . '</div>'; } } //Register different WA number checkout based on WA number on vendor stores setting add_action( 'woocommerce_before_thankyou', 'wfcm_add_assets_wa_checkout' ); add_filter( 'woocommerce_thankyou_order_received_text', 'wfcm_wa_thankyou', 10, 2 ); function wfcm_wa_thankyou($title, $order) { $data =[]; $shipping_data =[]; $judul = 'Obrigado pelo seu pedido.'; $subtitle = 'Conclua sua compra clicando no botão abaixo para que o pedido possa ser confirmado pelo Vendedor.'; $mode = ($order->get_billing_address_1() != $order->get_shipping_address_1() || $order->get_billing_first_name() != $order->get_shipping_first_name())?'shipping':'billing'; //$mode = 'shipping'; //force shipping mode $country = WC()->countries->countries[ $order->{"get_".$mode."_country"}() ]; $states = WC()->countries->get_states( $order->{"get_".$mode."_country"}() ); $province = $states[ $order->{"get_".$mode."_state"}() ]; $shipping_method_title = $order->get_shipping_method(); foreach( $order->get_items( 'shipping' ) as $item_id => $shipping_item_obj ){ $found=false; foreach($shipping_item_obj->get_meta_data() as $i=>$val){ $d = $val->get_data(); if($d['key']=='vendor_id'){ $shipping_data[$d['value']] = [ 'title'=>$shipping_item_obj->get_method_title(), 'total'=>$shipping_item_obj->get_total(), ]; $found = true; break; } if(!$found){ $shipping_data[0] = [ 'title'=>$shipping_item_obj->get_method_title(), 'total'=>$shipping_item_obj->get_total(), ]; } } } foreach($order->get_items() as $item){ $vendor_id = $item->get_meta('_vendor_id'); if(!isset($data[$vendor_id])){ $vendor_data = get_user_meta( $vendor_id, 'wcfmmp_profile_settings', true ); $whatsapp_show = isset( $vendor_data['store_whatsapp_show'] ) ? $vendor_data['store_whatsapp_show'] : 'no'; $whatsapp = isset( $vendor_data['store_whatsapp_number'] ) ? $vendor_data['store_whatsapp_number'] : null; $vendor_name = get_user_meta( $vendor_id, 'store_name', true ); if($whatsapp_show!='yes' || empty($whatsapp) ){ continue; } $items = $item->get_quantity()."x - *".$item->get_name()."*%0A"; $items .= "URL: ".get_permalink( $item->get_product_id() ) ."%0A"; $data[$vendor_id]=[ 'whatsapp'=>$whatsapp, 'vendor_name'=>$vendor_name, 'items'=>$items, 'total'=>$item->get_total(), ]; }else{ $items = $item->get_quantity()."x - *".$item->get_name()."*%0A"; $items .= "Tautan: ".get_permalink( $item->get_product_id() ) ."%0A"; $data[$vendor_id]['items'] .= $items; $data[$vendor_id]['total'] += $item->get_total(); } } if(empty($data)){ return $title; } //Loop each checkout vendors whatsapp button $html =''; foreach($data as $vendor_id=>$d){ $msg = "*Olá, aqui estão os detalhes do meu pedido:*%0A%0A"; $msg .= $d['items']."%0A"; $msg .="*Nº do pedido: ".$order->get_id()."%0A"; $msg .="*Valor total*: ".strip_tags(wc_price($d['total']))."%0A"; $msg .="*Forma de pagamento*: ".$order->get_payment_method_title()."%0A"; if(isset($shipping_data[$vendor_id])){ $msg .="*Forma de entrega*: ".$shipping_data[$vendor_id]['title']." ".strip_tags(wc_price($shipping_data[$vendor_id]['total']))."%0A%0A"; }elseif(isset($shipping_data[0])){ $msg .="*Forma de entrega*: ".$shipping_data[0]['title']." ". strip_tags(wc_price($shipping_data[0]['total']))."%0A%0A"; } $msg .="*Informações do Comprador*: %0A"; $msg .="Nome: ".$order->{"get_".$mode."_first_name"}()." ".$order->{"get_".$mode."_last_name"}()."%0A"; $msg .="Endereço: ".implode(', ',[$order->{"get_".$mode."_address_1"}(),$order->{"get_".$mode."_address_2"}()])."%0A"; $msg .="Cidade: ".$order->{"get_".$mode."_city"}().", ".$province.", ".$country."%0A"; $msg .="CEP: ".$order->{"get_".$mode."_postcode"}()."%0A"; if($mode=='shipping'){ $email = (isset($order->shipping['email']))?$order->shipping['email']:$order->get_billing_email(); $phone = (isset($order->shipping['phone']))?$order->shipping['phone']:$order->get_billing_phone(); }else{ $email = $order->get_billing_email(); $phone = $order->get_billing_phone(); } $msg .="E-mail: ".$email."%0A"; $msg .="Telefone: ".$phone."%0A"; $msg .= "Observações: ".$order->get_customer_note()."%0A"; $msg .="%0A"; $msg .="Muito Obrigado!%0A%0A"; $msg .= "Data da Mensagem: ".get_post_time( 'j-F-Y - H:i', false, $order->get_id(), true ); $btn_text ='Enviar compra para: '.$d['vendor_name']; $html .= '<a id="sendbtn" href="https://api.whatsapp.com/send?phone='.$d['whatsapp'].'&text='. ($msg).'" target="_blank" class="wa-order-thankyou">'.$btn_text.'</a><br>'; } return '<div class="thankyoucustom_wrapper"> <h1 class="thankyoutitle">'.$judul.'</h1> <p class="subtitle">'.$subtitle.'</p>'. $html. '</div>'; } function wfcm_add_assets_wa_checkout(){ wp_register_style( 'wa_checkout_style', plugin_dir_url( __FILE__ ) . 'style.css' ); wp_enqueue_style( 'wa_checkout_style' ); }
  14. violin101

    PHP+Codeigniter - Ajuda com Relatório mPDF

    Caros amigos saudações... Primeiramente peço desculpa se postei minha dúvida na opção errada. Estou escrevendo uma Rotina para Impressão de Relatório usando mPDF, até aqui tudo bem. O relatório tem um: Título - Tabela - Dados. Minha dúvida: --[ como faço para REPETIR em todo SALTO de Página o Título ou Cabeçalho da Tabela, por exemplo: Título.................: Relatório de Estoque Tabela Campos: Código | Descrição | ESP | Qtde | Valor Grato, Cesar
  15. Sapinn

    Dados truncados para a coluna

    Opa galera tudo beleza? Então meu banco está me retomando um erro quando tento inserir nele que é "Dados truncados na coluna valor_produto" essa coluna era do tipo Double quando eu mudei para ela para TEXT funcionou os dados foram inseridos mas eu preciso que ela seja do tipo double. Alguém sabe como resolver????
  16. k9studio

    Login com Cookie

    Olá Amigos, se alguem puder dar um help fico muito grato seguinte: estou criando um sistema de login com cookie todas as paginas fica no patch www/htdocs/script/ quando logar no dominio.com.br liberar o acesso no cliente.dominio.com.br tambem acesso:dominio.com.br ou quando logar no cliente.dominio.com.br liberar o acesso no dominio.com.br tambem acesso:cliente.dominio.com.br e guando deslogar quebrar conxao com os dois existe uma maneira de fazer isso?
  17. Prezados boa tarde. Preciso bloquear a edição de um date input de forma que só seja possível selecionar a data através do calendário. Alguém pode me ajudar? Utilizo php, html e js. <input type="date" value="<?php echo $data ?>" name="datacoleta" class="form-control" required style="width:100%;"> Agradeço desde já.
  18. Prezados boa tarde. Preciso bloquear a edição de um date input de forma que só seja possível selecionar a data através do calendário. Alguém pode me ajudar? Utilizo php, html e js. <input type="date" value="<?php echo $data ?>" name="datacoleta" class="form-control" required style="width:100%;"> Agradeço desde já.
  19. Thiago Duarte

    Cadastro PHP e Login na mesma página

    Eu tenho uma página que abri um alert ao clicar no link , só que nao cadastra e nem funciona o login. <div class="btn-box"> <a class="btn btn-color venobox vbox-item" data-toggle="modal" href="javascript:void(0)" onclick="openRegisterModal();">Start now Free </a> <img src="images/seta.png"> </div> <div class="modal-body"> <div class="box"> <div class="content"> <!-- Login Form --> <div class="loginBox"> <form id="login-modal" role="form" method="post" action="#"> <input type="hidden" name="param" value="logar" /> <!-- Success/Alert Notification --> <p class="lm-success"><i class="icon icon_check_alt2"></i> <strong>Congratulation! Login modal validation is working. Implement your code.</strong></p> <p class="lm-failed"><i class="icon icon_close_alt2"></i><strong> Something went wrong! Insert correct value.</strong></p> <!-- Input Fields --> <input id="lm-email" class="form-control input-lg" type="text" placeholder="Email" name="email" required=""> <input id="lm-password" class="form-control input-lg" type="password" placeholder="Password" name="senha" required=""> <!-- Login Button --> <input type="submit" class="btn btn-color" value="Login"> <!-- <button class="btn btn-color">Login</button> --> </form> </div> <!-- /End Login Form --> </div> </div> <!-- /End Login Form Box --> <div class="box"> <!-- Signup Form --> <div class="content registerBox" style="display:none;"> <form id="signup-modal" role="form" method="post" action="?go=cadastrar"> <!-- Success/Alert Notification --> <p class="sm-success"><i class="icon icon_check_alt2"></i> <strong>Congratulation! Signup modal validation is working. Implement your code.</strong></p> <p class="sm-failed"><i class="icon icon_close_alt2"></i><strong> Something went wrong! Insert correct value.</strong></p> <!-- Input Fields --> <input id="sm-email" class="form-control input-lg" type="text" placeholder="Email" name="email" required=""> <input id="sm-password" class="form-control input-lg" type="password" placeholder="password" name="password"> <input id="sm-confirm" class="form-control input-lg" type="password" placeholder="Repeat password" name="senha-confirm"> <!-- Signup Button --> <!-- <button class="btn btn-color">Create an account</button> --> <input type="submit" class="btn btn-color" value="Create an account"> </form> </div> <!-- /End Signup Form --> </div> <!-- /End Signup Form Box --> </div> e em baixo do </html> coloquei <?php $param = (empty($_POST['param'])) ? 'error' : $_POST['param']; if($param == 'logar'){ //if($_POST['param'] == 'logar'){ $email = $_POST['email']; $password = $_POST['password']; $query1 = mysql_num_rows(mysql_query("SELECT * FROM usuario WHERE email = '$email' AND password = '$password'")) or die(mysql_error()); if($query1 == 1){ // print "<script>alert('logou');</script>"; print "<script>window.location.replace('dashboard/index.php');</script>"; }else{ echo "<script>alert('User and password do not match.'); history.back();</script>"; } } if(@$_GET['go'] == 'cadastrar'){ // $dominio_gratis = $_POST['dominio_gratis']; $email = $_POST['email']; $password = $_POST['password']; $date_register = date("m-d-Y"); // if(empty($dominio_gratis)){ // echo "<script>alert('Preencha todos os campos para se cadastrar.'); history.back();</script>"; // }else if(empty($email)){ echo "<script>alert('Fill in all the fields to register.'); history.back();</script>"; }elseif(empty($password)){ echo "<script>alert('Fill in all the fields to register.'); history.back();</script>"; }else{ $query1 = mysql_num_rows(mysql_query("SELECT * FROM usuario WHERE email = '$email'")); if($query1 == 1){ echo "<script>alert('User already exists.'); history.back();</script>"; }else{ mysql_query("insert into usuario (email, password, date_register, plan) values ('$email','$password','$date_register', '0')"); header("Location: dashboard/dashboard.php"); } } } ?> Alguem pode ajudar?
  20. ricardocelso

    Iniciante php

    Pessoal boa tarde, tenho um pc com windows 10, oque preciso instalar para programar em php desde ja muito obrigado.
  21. mateus.andriollo

    Log - inserção, edição e exclusão

    Gostaria de saber se alguém tem uma trigger para fazer log de qualquer tipo de transação de dados em qualquer tabela do banco. Porém, preciso carregar um campo UserName que será setado a cada conexão via login php SET @UserName = 'ZeBala' Achei vários exemplos porém tenho q criar um trigger para cada tabela CREATE TRIGGER roles_audit_au AFTER UPDATE ON `<nome_tabela>` Existe uma forma de não ser direcionada?
  22. Boa tarde Tenho 5 campos do tipo select no meu formulário. A seguir um dos campos. <div id="resp" class="form-group col-md-3" placeholder="Responsável" title="Pesquisar por Responsável"> <select class="form-control" id="resp" name="resp" placeholder="Responsável" title="Pesquisar por Responsável"> <option value="">Responsável</option> <?php $Sql = "SELECT ..."; $Resultado = ... while ($linha = @pg_fetch_array($Resultado)){. $id_responsavel_bd = $linha["id_responsavel"]; $nome_responsavel_bd = $linha["responsavel"]; if ($resp == $id_responsavel_bd){ echo "<option value='$id_responsavel_bd' selected = 'selected'>$nome_responsavel_bd</option>";} else{ echo "<option value='$id_responsavel_bd'>$nome_responsavel_bd</option>";} } ?> </select> </div> Tenho uma função jquery que ao selecionar qualquer um destes campos, faz uma requisição ajax para atualizar uma div do meu form. <script type="text/javascript"> $(document).ready(function(){ $('select').change(function(){ // Todos selects $('form').submit(function(){ var dados = $(this).serialize(); $.ajax({ type: "POST", url: 'arquivo_ajax.php', dataType: 'html', data: dados, }).done(function(data){ //console.log(data); $("#list").empty().html(data); }); return false; }); $("#meu_form").trigger('submit'); }); }); </script> Ao abrir o formulário e fazer a primeira seleção de algum campo do tipo select, é gerada uma solicitação ajax. O problema é que a cada nova seleção deste campo e de algum outro campo, ao invés de realizar UMA ÚNICA REQUISIÇÃO, está aumentando o número de requisições a cada nova ação. Como não tenho muitos conhecimentos em jquery/ajax em minha dúvida: - É normal ir aumentando o número de requisições? - Deveria sempre realizar apenas uma requisição (imagino que seja correto)? - Meu código está correto? Se não está, onde estou errando? Desde já agradeço pela colaboração.
  23. Lucas Fregonezi

    ajuda erro mvc

    Bom dia pessoal, sou iniciante em php e estou tendo um problema que não sei resolver. estou tentando aprender MVC e logo de inicio tive um erro que não sei como resolver, alguém pode me ajudar? o erro: Fatal error: Uncaught ArgumentCountError: Too few arguments to function App\Utils\View::render(), 1 passed in C:\xampp\htdocs\app\Controller\Pages\Page.php on line 16 and exactly 2 expected in C:\xampp\htdocs\app\Utils\View.php:33 Stack trace: #0 C:\xampp\htdocs\app\Controller\Pages\Page.php(16): App\Utils\View::render('pages/header') #1 C:\xampp\htdocs\app\Controller\Pages\Page.php(34): App\Controller\Pages\Page::getHeader() #2 C:\xampp\htdocs\app\Controller\Pages\Home.php(23): App\Controller\Pages\Page::getPage('Like Desenvolvi...', '<h1>Home LucasD...') #3 C:\xampp\htdocs\index.php(7): App\Controller\Pages\Home::getHome() #4 {main} thrown in C:\xampp\htdocs\app\Utils\View.php on line 33 a pagina Page.php: <?php namespace App\Controller\Pages; use \App\Utils\View; class Page { /** * *Método responsavel por renderizar o topo da pagina * @return string */ private static function getHeader(){ return View::render('pages/header'); //$depura = View::render('pages/header'); //var_dump($depura); } private static function getFooter(){ return View::render('pages/footer'); } /** * Metodo responsavel por retornar o conteúdo (view) da nossa Pagina Generica * @return string */ public static function getPage($title, $content) { return View::render('pages/page', [ 'title' => $title, 'header' => self::getHeader(), 'content' => $content, ///'footer' => self::getFooter() ]); } } ?> a pagina View.php <?php namespace App\Utils; class View{ /** * * Método responsavel por retornar o conteúdo de uma view * @param string $view * @return string * */ private static function getContentView($view){ // $file = __DIR__.'/../../resources/view/'.$view.'.html'; return file_exists($file) ? file_get_contents($file) : ''; } /** * * Método responsavel por retornar o conteúdo renderizado de uma view * @param string $view * @param array $vars (strings/numerics) * @return string * */ public static function render($view, $vars){ $contentView = self::getContentView($view); //Chaves do array de variaveis $keys = array_keys($vars); //mapeio o array $keys = array_map(function($item){ return '{{'.$item.'}}'; }, $keys); return str_replace($keys,array_values($vars),$contentView); } } ?> A pagina Home.php: <?php namespace App\Controller\Pages; use \App\Utils\View; class Home extends Page{ /** * Metodo responsavel por retornar o conteúdo (view) da nossa home * @return string */ public static function getHome() { $content = View::render('pages/home', [ 'name' => 'LucasDevLike', 'description' => 'aprendendo php e mvc', 'link' => 'https://likedesenvolvimento.com.br', 'site' => 'likedesenvolvimento.com.br' ]); //Retorna a view da pagina return parent::getPage('Like Desenvolvimento - MVC', $content); } } ?>
  24. Boca

    Retorno curl

    Pessoas estou tentando receber o retorno do curl, mas não vem nada, e na url exibe normalmente os dados json <? $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $conteudo = curl_exec($ch); $result = json_decode($conteudo, true); curl_close($ch);
  25. asacap1000

    Mostrar site em miniatura

    Salve galera. Tenho uma página com vários box deste abaixo com a descrição de uma TV que temos na empresa onde mostram os status de diversos processos. Ainda não coloquei o link para o direcionamento porém antes da pessoa clicar eu gostaria que quando posicionasse o mouse em cima do botão aparecesse uma miniatura do site destino. é Possivel isso?? eu tentei o mouseover mas não carregou, <div class="col-lg-3 col-xs-6"> <div class="small-box bg-blue-gradient" style="border-radius: 05px 05px;"> <div class="inner"> <h3 align="center"><?=$qtd_veiculos?></h3> <p align="center">VEÍCULOS EM TRÂNSITO</p> </div> </div> </div>
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.