Jump to content

Search the Community

Showing results for tags 'MYsql'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Web Development
    • HTML e CSS
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets and other environments
    • WordPress
    • Mobile
    • Agile
    • Desenvolvimento de Games
    • Banco de Dados
    • Design and UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • iMasters's pub

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 2052 results

  1. arleyfroes

    Gráfico JS com dados MYSQL

    Boa Tarde, eu tenho o seguinte código com os dados do gráfico inseridos na mão: <html> <head> <script type="text/javascript" src="js/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable([ ['TimeStamp', 'FT001', 'FT002'], ['2019-04-10 10:24:09', 300, 400], ['2019-04-10 10:25:09', 600, 460], ['2019-04-10 10:26:09', 500, 1120], ['2019-04-10 10:27:09', 550, 540] ]); var options = { title: 'Company Performance', hAxis: {title: 'TimeStamp', titleTextStyle: {color: '#333'}}, vAxis: {minValue: 0}, backgroundColor: '#E4E4E4', }; var chart = new google.visualization.AreaChart(document.getElementById('chart_div')); chart.draw(data, options); } </script> </head> <body> <div id="chart_div" style="width: 100%; height: 500px"></div> </body> </html> gostaria de saber como busco os dados do Banco de Dados Mysql.
  2. Estou com uma dúvida no tipo de subconsulta realizar para revelar determinado tipo de registro em uma tabela A questão é : -> Mostre o código e a descrição dos produtos que não entraram em nenhum pedido de cliente. Quantos não entraram? ------------------------------- O inicio do código seria, amostrar o código e a descrição dos produtos -> select CodProd, DescProd from produto; Porém não sei se devo de usar o INNER JOIN ou NATURAL JOIN, mas acabei deixando desta maneira select CodProd, DescProd from produto where CodPed not in (select CodPed, CodCli from pedido); <-- Não sei se estou certo. ------------------------------- Detalhes: Tabela item_pedido possui as colunas (CodItem,CodPed,PosicaoItem e QtdItem) Tabela pedido possui as colunas (CodPed,CodCli,SituacaoPed e DataPed) Tabela produto possui as colunas (CodProd,DescProd e CodDepto)
  3. Olá, eu tenho um trabalho de faculdade para fazer e preciso usar o MySQL, mas não consigo configurar ele corretamente. Ele sempre dá erro na configuração do router e eu não achei em nenhum lugar alguma resposta. Poderiam me ajudar, por favor ? Obrigado por lerem
  4. Olá a todos sou novo no grupo porem ja peguei muita solução aqui no forum. Gostaria da ajude devocês pois estou com uma dificuldade em meu site. Tenho um painel ADMININSTRATIVO em meu site e tenho aceso a visão de algumas coisas dos usuarios como quantidade de logins, nivel de acesso, nome, sobrenome, email e outras coisas refetente ao conteúdo do site. Ai vem minha dúvida preciso pegar o IP dos usuarios no meu banco de dados e sim ja tenho essa função, porem ele fica misturado com de todos outros, montei o mesmo para visualização dos ultimos 8 aceessos com data assim: <tbody> <?php $qnt_result_pg = 8; $stmtt=$bdd->prepare("SELECT * FROM vanguard_singin WHERE name_user=? ORDER BY id desc LIMIT $qnt_result_pg"); $stmtt->execute(array($_SESSION['vg_usern'])); while($rowip=$stmtt->fetch(PDO::FETCH_ASSOC)) { ?> <tr> <td><?php echo $rowip['ip']; ?></td> <?php $source = $rowip['dt_log']; $date = new DateTime($source); ?> <td><?php echo $date->format('d/m/Y G:y'); ?></td> </tr> <?php } ?> </tbody> e funciona perfeito porem preciso implementar essa função no meu painel, lembrando que esse código acima ele serve apenas para o proprio usuario visualizar. ESSE É DO PAINEL <tbody> <?php $query = "SELECT * FROM vanguard_users"; $stmt = $bdd->prepare( $query ); $stmt->execute(); while($row_usuario=$stmt->fetch(PDO::FETCH_ASSOC)) { $result_items2 = $bdd->query('SELECT count(1) FROM vanguard_items WHERE author="' .$row_usuario['usern']. '"'); $row_items2 = $result_items2->fetch(); $total_items2 = $row_items2[0]; $result_follow = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_following = {$row_usuario['id']}"); $row_follow = $result_follow->fetch(); $total_follow = $row_follow[0]; $result_follower = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_follower = {$row_usuario['id']}"); $row_follower = $result_follower->fetch(); $total_follower = $row_follower[0]; extract($row_usuario); $name_user = $row_usuario['usern']; $result_ip = $bdd->prepare('SELECT COUNT(ip) FROM vanguard_singin WHERE name_user = "' .$row_usuario['usern']. '"'); $result_ip->execute(array($name_user)); $result_ip = $result_ip->fetchColumn(); ?> <tr class="odd gradeX"> <td width="1%" class="f-s-600 text-white-transparent-8"> <?php echo $row_usuario['id']; ?> </td><!-- ID --> <td width="1%" class="with-img"> <img src="<?= $url; ?>static/img/avatars/<?php echo $row_usuario['avatar']; ?>" class="img-rounded height-30" /> </td><!-- PHOTO --> <td> <?php echo $row_usuario['usern']; ?> </td><!-- USERNAME --> <td> <?php echo $row_usuario['lname']; ?> </td><!-- NOME --> <td> <?php echo $row_usuario['fname']; ?> </td><!-- SOBRENOME --> <td> <?php if ($row_usuario['role'] == "1") { echo '<h5 class="text1">'.$lang['CLASS_01'].'<h5>'; } elseif ($row_usuario['role'] == "2") { echo '<h5 class="text2">'.$lang['CLASS_02'].'<h5>'; } elseif ($row_usuario['role'] == "3") { echo '<h5 class="text3">'.$lang['CLASS_03'].'<h5>'; } elseif ($row_usuario['role'] == "4") { echo '<h5 class="text4">'.$lang['CLASS_04'].'<h5>'; } elseif ($row_usuario['role'] == "5") { echo '<h5 class="text5">'.$lang['CLASS_05'].'<h5>'; } elseif ($row_usuario['role'] == "6") { echo '<h5 class="text6">'.$lang['CLASS_06'].'<h5>'; } elseif ($row_usuario['role'] == "7") { echo '<h5 class="text7">'.$lang['CLASS_07'].'<h5>'; } else { echo '<h5 class="">'.$lang['CLASS_00'].'<h5>'; }; ?> </td><!-- NIVEL DE ACESSO --> <td> <?php echo $row_usuario['created']; ?> </td><!-- DATA DE CRIAÇÃO --> <td> <?php echo $row_usuario['email']; ?> </td><!-- EMAIL --> <td> <?php echo $row_usuario['quotas']; ?> </td><!-- QUOTA DE POSTS --> <td> <?php echo $row_ip['ip']; ?> </td><!-- IP --> <td> <?php if ($total_items2 == 0) { ?>0<?php } ?><?php if ($total_items2 > 0) { ?><?php echo $total_items2; ?><?php } ?> </td><!-- ITENS POSTADOS NA PAGINA DOWNS --> <td> <?php echo $total_follower; ?> </td><!-- SEGUINDO --> <td> <?php echo $total_follow; ?> </td><!-- SEGUIDOR --> <td> <?php echo $result_ip; ?> </td><!-- LOGINS TOTAL --> <td class="with-btn" nowrap> <a href="<?= $url; ?>edit_usuario/<?php echo $row_usuario['id']; ?>" class="btn btn-sm btn-primary width-60 m-r-2">Editar</a> <?php if ($row_usuario['status'] == "2") { ?> <a href="<?= $url; ?>edit_ban/<?php echo $row_usuario['id']; ?>" class="btn btn-sm btn-warning">DesBanir</a> <?php }else{ ?> <a href="<?= $url; ?>edit_ban/<?php echo $row_usuario['id']; ?>" class="btn btn-sm btn-danger">Banir</a> <?php } ?> </td><!-- OPÇÕES DE EDITAR E BANIR --> </tr> <?php } ?> </tbody> Só deixar claro aqui sei que ninguém aqui é leigo mais para adiantar e talvez não haver confusão: Esse inicio de código seria o que chama a tabela dos usuários e seus dados: $query = "SELECT * FROM vanguard_users"; $stmt = $bdd->prepare( $query ); $stmt->execute(); while($row_usuario=$stmt->fetch(PDO::FETCH_ASSOC)) { Essa segunda parte é uma segunda tabela onde chama algumas informações referente á um serviço do site: $result_items2 = $bdd->query('SELECT count(1) FROM vanguard_items WHERE author="' .$row_usuario['usern']. '"'); $row_items2 = $result_items2->fetch(); $total_items2 = $row_items2[0]; Essa terceira parte chama outra tabela e informa outros dados referente ao perfil do usuario: $result_follow = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_following = {$row_usuario['id']}"); $row_follow = $result_follow->fetch(); $total_follow = $row_follow[0]; $result_follower = $bdd->query("SELECT count(1) FROM vanguard_follow WHERE id_follower = {$row_usuario['id']}"); $row_follower = $result_follower->fetch(); $total_follower = $row_follower[0]; Essa quarta parte chama a quantidade de logins do usuario : Obs que esse é a mesma TABELA que preciso acessar para ver o IP do usuário porem ele só contabiliza os IP do mesmo usuário e soma assim dando a quantidade de logins no site. extract($row_usuario); $name_user = $row_usuario['usern']; $result_ip = $bdd->prepare('SELECT COUNT(ip) FROM vanguard_singin WHERE name_user = "' .$row_usuario['usern']. '"'); $result_ip->execute(array($name_user)); $result_ip = $result_ip->fetchColumn(); Preciso dessa mesma tabela visualizar os ultimos logins e me informar o IP como mostro no inicio da publicação. Quem puder ajudar agradeço muitissímo. Abraço a todos e um ótimo final de semana.
  5. Raquel Isabel Teixeira PIr

    Ajuda com php

    Não consigo exibir o banco de dados na pagina, da erro na msqli_query <?php $sql = "SELECT * FROM funcionarios"; $resultado = msqli_query($connect,$sql); while($dados = mysqli_fetch_array($resultado)): ?> <tr> <td> <?php echo $dados['setor'] ?> </td> <td> <?php echo $dados['nome'] ?> </td> <td><?php echo $dados['cargo'] ?></td> <td><?php echo $dados['email'] ?></td> <td><?php echo $dados['ramal'] ?></td> </tr> <?php endwhile; ?>
  6. daniel8634

    Rotina de fila com problema

    Fala pessoal, tudo bem? Estou com um problema com uma rotina, que tem como funcionalidade principal a fila, é uma rotina de fila, que basicamente funciona com o envio de uma solicitação e fica aguardando até o retorno dessa solicitação ser satisfeita, caso não ocorra passa para outra solicitação e fica com esse loop, até que se encerre o processo, o que esta ocorrendo é que aparentemente essa rotina fica travando em algum momento ou por algum motivo a resposta não chega de forma adequada para que o processo de fila funcione de forma correta, abaixo vou posta a rotina completa para vocês darem uma olhada e de repente visualizar algo que não esteja conseguindo visualizar, gostaria de contar com a ajuda de vocês para tentarem ver se tem algo de errado com a rotina. <?php error_reporting(0); include_once '../apporioconfig/start_up.php'; header("Content-Type: application/json"); include 'pn_android.php'; include 'pn_iphone.php'; include 'one-signal.php'; include 'firebase_new.php'; $query = "select * from admin_panel_settings WHERE admin_panel_setting_id=1"; $result = $db->query($query); $admin_settings = $result->row; $normal_ride_radius = $admin_settings['normal_ride_radius']; $admin_panel_request = $admin_settings['admin_panel_request']; $admin_panel_firebase_id = $admin_settings['admin_panel_firebase_id']; $onesignal_rest_key = $admin_settings['onesignal_rest_key']; $onesignal_app_id = $admin_settings['onesignal_app_id']; $onesignal_redirect_url = $admin_settings['onesignal_redirect_url']; $user_id = $_REQUEST['user_id']; $coupon_code = $_REQUEST['coupon_code']; $pickup_lat = $_REQUEST['pickup_lat']; $pickup_long = $_REQUEST['pickup_long']; $pickup_location = $_REQUEST['pickup_location']; $drop_lat = $_REQUEST['drop_lat']; $drop_long = $_REQUEST['drop_long']; $drop_location = $_REQUEST['drop_location']; $car_type_id = $_REQUEST['car_type_id']; $language_code = $_REQUEST['language_code']; $payment_option_id = $_REQUEST['payment_option_id']; $card_id = $_REQUEST['card_id']; $pem_file = $_REQUEST['pem_file']; if ($user_id != "" && $pickup_lat != "" && $pickup_long != "" && $pickup_location != "" && $car_type_id != "" && $payment_option_id != "") { if ($pem_file == "") { $pem_file = 1; } $time = date("H:i:s"); $dt = DateTime::createFromFormat('!d/m/Y', date("d/m/Y")); $data = $dt->format('M j'); $day = date("l"); $date1 = $day . ", " . $data; $date1 = strftime('%d-%m-%Y', strtotime($date1)); //CONTROLD - 13/10/2018 - Alteração para formatar data $query3 = "select * from driver where verification_status=1 AND driver_category IN (1,3) AND car_type_id='$car_type_id' and online_offline = 1 and driver_admin_status=1 and busy=0 and login_logout=1 order by rand()"; $result3 = $db->query($query3); $ex_rows = $result3->num_rows; if ($ex_rows == 0) { $image = ""; $last_time_stamp = date("h:i:s A"); $query1 = "INSERT INTO no_driver_ride_table(user_id,coupon_code, pickup_lat, pickup_long,pickup_location,drop_lat,drop_long,drop_location, ride_date,ride_time,ride_type,ride_status,ride_image,car_type_id,payment_option_id,card_id,last_time_stamp) VALUES ('$user_id','$coupon_code','$pickup_lat','$pickup_long','$pickup_location','$drop_lat','$drop_long','$drop_location', '$date1','$time','1','1','$image','$car_type_id','$payment_option_id','$card_id','$last_time_stamp')"; $db->query($query1); $language = "select * from table_messages where language_code='$language_code' and message_id=34"; $lang_result = $db->query($language); $lang_list = $lang_result->row; $message = $lang_list['message']; $re = array('result' => 0, 'msg' => $message); } else { $list3 = $result3->rows; $c = array(); foreach ($list3 as $login3) { $driver_lat = $login3['current_lat']; $driver_long = $login3['current_long']; $theta = $pickup_long - $driver_long; $dist = sin(deg2rad($pickup_lat)) * sin(deg2rad($driver_lat)) + cos(deg2rad($pickup_lat)) * cos(deg2rad($driver_lat)) * cos(deg2rad($theta)); $dist = acos($dist); $dist = rad2deg($dist); $miles = $dist * 60 * 1.1515; $km = $miles * 1.609344; if ($km <= $normal_ride_radius) { $c[] = array("driver_id" => $login3['driver_id'], "distance" => $km, ); } } // inicio rotina grava viagem //print_r($c); if (!empty($c)) { // aqui - CONTROLD - 28/01/2019 - Validação para verificar se já tem viagem em andamento ao solicitar uma nova viagem $query_verifica = "select user_id,viagem from user where user_id='$user_id' and viagem = 'S' order by user_id asc"; $result_verifica = $db->query($query_verifica); $quant_verifica = $result_verifica->num_rows; //if ($quant_verifica >= 1) { // $re = array('result' => 0, 'msg' => "Você já possui uma viagem em andamento, aguarde o motorista ou cancele a viagem.", 'details' => ""); //}else{ $image = ""; $date = date("Y-m-d"); $last_time_stamp = date("h:i:s A"); $query1 = "INSERT INTO ride_table (user_id,coupon_code, pickup_lat,pickup_long,pickup_location,drop_lat,drop_long,drop_location, ride_date,ride_time,ride_type,ride_status,ride_image,car_type_id,payment_option_id,card_id,last_time_stamp,date,pem_file) VALUES ('$user_id','$coupon_code','$pickup_lat','$pickup_long','$pickup_location','$drop_lat','$drop_long','$drop_location', '$date1','$time','1','1','$image','$car_type_id','$payment_option_id','$card_id','$last_time_stamp','$date','$pem_file')"; $db->query($query1); $last_id = $db->getLastId(); $query3 = "select * from ride_table where ride_id='$last_id'"; $result3 = $db->query($query3); $list = $result3->row; $ride_status = $list['ride_status']; $data_viagem = $list['ride_time']; sendMessage($onesignal_app_id, $onesignal_redirect_url, $onesignal_rest_key); $firebase_id = uniqid(); new_ride_sound($admin_panel_firebase_id, $firebase_id); clear($admin_panel_firebase_id, $firebase_id); $nodes = array(); $repetir = 0; foreach ($c as $value) { $distance[] = $value['distance']; } $repetir = 0; $id_motorista = "aaaa"; //array_multisort($distance, SORT_ASC, $c); foreach ($c as $driver) { // echo "aqui envia push ".$driver['driver_id'] ."<br>"; // echo "repetir: ".$repetir; // push // aqui $ride_id = (string)$last_id; $nodes[$driver_id] = array('ride_id' => $ride_id, 'ride_status' => "1"); $query3 = "select * from driver_ride_allocated where driver_id='$driver_id'"; $result3 = $db->query($query3); $driver_allocated = $result3->row; if (empty($driver_allocated)) { $query5 = "INSERT INTO driver_ride_allocated (driver_id,ride_id,ride_mode) VALUES ('$driver_id','$ride_id','1')"; $db->query($query5); } else { $query5 = "UPDATE driver_ride_allocated SET ride_id='$ride_id' WHERE driver_id='$driver_id'"; $db->query($query5); } if ($repetir == 1){ break; } $driver_id = $driver['driver_id']; $query4 = "select * from driver where driver_id='$driver_id'"; $result4 = $db->query($query4); $list4 = $result4->row; $device_id = $list4['device_id']; $language = "select * from table_messages where language_code='$language_code' and message_id=35"; $lang_result = $db->query($language); $lang_list = $lang_result->row; $message = $lang_list['message']; $ride_id = (String)$last_id; $ride_status = '1'; //echo "device id: ".$device_id."<br>"; //echo "driver id: ".$driver_id."<br>"; $codi_motorista = $driver['driver_id']; $query5 = "INSERT INTO ride_allocated (allocated_ride_id, allocated_driver_id,allocated_date) VALUES ('$ride_id','$codi_motorista','$date')"; $db->query($query5); new_ride($nodes,$admin_panel_firebase_id); if ($device_id != "") { // echo "entrou para enviar push"."<br>"; if ($list4['flag'] == 1) { IphonePushNotificationDriver($device_id, $message, $ride_id, $ride_status, $pem_file); }else { //echo "entrou no push android "."<br>"; //echo "device id: ".$device_id. "<br>"; //echo "message id: ".$message. "<br>"; //echo "ride id: ".$ride_id. "<br>"; //echo "ride status id: ".$ride_status. "<br>"; AndroidPushNotificationDriver($device_id, $message, $ride_id, $ride_status); } } //fim push //echo "entrou 0"; //echo "motorista while: ".$driver['driver_id']; //echo "id do motorista: ".$id_motorista ."<br>"; //echo "id do driver: ".$driver['driver_id'] ."<br>"; while ($repetir == 0) { $hora_atual = date('H:i:s'); //echo "hora atual: ".$hora_atual; //echo "<br>"." hora da viagem: ".$data_viagem; // echo "<br>"." diferença: ".calculaTempo($data_viagem,$hora_atual); //echo "<br>"."hora da viagem: ".$data_viagem; // inicio //echo "data 1: ".$data_viagem; //echo "<br>"."data 2 ".$hora_atual; /* if (calculaTempo($data_viagem,$hora_atual) >= 01){ //echo "parou na hora deu tempo "."<br>"; //$query_tempo = "UPDATE ride_table SET ride_status='40' WHERE user_id = '$user_id' and ride_id='$ride_id'"; // $db->query($query_tempo); $repetir = 1; break; } */ /*} else{ echo "entrou na hora continuou"."<br>"; continue; // continue; } */ //fim //echo "chegou rejeita? <br>"; $id_driver = $driver['driver_id']; //echo "id driver: ".$id_driver."<br>"; //echo "id da viagem ".$ride_id ."<br>"; $query_rejeita = "select reject_ride_id,reject_driver_id from ride_reject where reject_ride_id = '$ride_id' and reject_driver_id='$id_driver'"; $result_rejeita = $db->query($query_rejeita); $list_rejeita = $result_rejeita->num_rows; //echo "id do motorista: ".$driver['driver_id'] ."<br>"; //echo "rejeitou? ".$list_rejeita ."<br>"; if ($list_rejeita > 0){ //&& $codigo_motorista != $driver['driver_id']) { //echo "entrou 2"; //print_r("print motorista id: ".$driver); //echo "motorista: ".$driver['driver_id']; //echo "passou print <br>"; //// echo "entrou rejeitou"."<br>"; $repetir = 0; //$list_rejeita = 1; break; //continue; } else{ //echo "entrou else rejeitou"."<br>"; $repetir = 0; //continue; } // aceitou viagem //echo "aceitou: entrando verificação se aceitou"; //echo "Chegou aceitou viagem"."<br>"; //sleep(5); $query_consulta = "select ride_status from ride_table where ride_id = '$ride_id' and ride_status = '3' and user_id = '$user_id'"; $result_consulta = $db->query($query_consulta); $lista_consulta = $result_consulta->num_rows; //$repetir = $lista_consulta; //echo "aceitou: " . $lista_consulta; if ($lista_consulta >= 1) { //echo "aceitou viagem"."<br>"; $repetir = 1; // break; }else{ //echo "continuou aceitou viagem"."<br>"; $repetir = 0; continue; } //fim aceitou viagem // auto cancelada //echo "Chegou entrou alto cancelada"."<br>"; $query_autocancel = "select ride_status from ride_table where ride_id = '$ride_id' and (ride_status = '2' or ride_status = '15') and user_id = '$user_id'"; $result_autocancel = $db->query($query_autocancel); $lista_autocancel = $result_autocancel>num_rows; if ($lista_autocancel >= 1) { //echo "entrou alto cancelada"."<br>"; $repetir = 1; // break; }else{ //echo "continuou auto cancelada"."<br>"; // continue; } $query_autocancel_passageiro = "select ride_status from ride_table where ride_id = '$ride_id' and ride_status = '40' and user_id = '$user_id'"; $result_autocancel_passageiro = $db->query($query_autocancel_passageiro); $lista_autocancel_passageiro = $result_autocancel_passageiro>num_rows; if ($lista_autocancel_passageiro >= 1) { // echo "entrou alto cancelada"."<br>"; $repetir = 1; break; }else{ //echo "continuou auto cancelada"."<br>"; continue; } // fim auto cancelada // verifica se passou 1 minuto em relação a solicitação da viagem, caso sim sai fora //$hora_atual = date('H:i:s'); //echo "hora atual: ".$hora_atual; //echo "Diferença de hora: ".difDeHoras($hora_atual,$data_viagem); // fim //echo "aqui envia push"; if ($repetir == 0){ continue; } $id_motorista = $driver['driver_id']; } } // 28/01/2019 - CONTROLD - Atualiza campo na tabela de usuarios para controlar solicitação de viagens //$query_update_user = "UPDATE user SET viagem='S' WHERE user_id='$user_id'"; //$db->query($query_update_user); $query5 = "INSERT INTO table_user_rides(booking_id,ride_mode,user_id) VALUES ('$last_id','1','$user_id')"; $db->query($query5); $query3 = "select * from ride_table where ride_id='$last_id'"; $result3 = $db->query($query3); $list = $result3->row; //echo "entrou aqui"; $re = array('result' => 1, 'msg' => "" . $km, 'details' => $list); //} } else { $image = ""; $last_time_stamp = date("h:i:s A"); $query1 = "INSERT INTO no_driver_ride_table (user_id,coupon_code, pickup_lat, pickup_long,pickup_location,drop_lat,drop_long,drop_location, ride_date,ride_time,ride_type,ride_status,ride_image,car_type_id,payment_option_id,card_id,last_time_stamp) VALUES ('$user_id','$coupon_code','$pickup_lat','$pickup_long','$pickup_location','$drop_lat','$drop_long','$drop_location', '$date','$time','1','1','$image','$car_type_id','$payment_option_id','$card_id','$last_time_stamp')"; $db->query($query1); $language = "select * from table_messages where language_code='$language_code' and message_id=36"; $lang_result = $db->query($language); $lang_list = $lang_result->row; $message = $lang_list['message']; $re = array('result' => 0, 'msg' => "Sem motorista", ); } } }else{ $re = array('result' => 0, 'msg' => "Faltou informar algum campo"); } echo json_encode($re, JSON_PRETTY_PRINT); /* function difDeHoras($hIni, $hFinal) { // Separa á hora dos minutos $hIni = explode(':', $hIni); $hFinal = explode(':', $hFinal); // Converte a hora e minuto para segundos $hIni = (60 * 60 * $hIni[0]) + (60 * $hIni[1]); $hFinal = (60 * 60 * $hFinal[0]) + (60 * $hFinal[1]); // Verifica se a hora final é maior que a inicial if(!($hIni < $hFinal)) { return false; } // Calcula diferença de horas $difDeHora = $hFinal - $hIni; //Converte os segundos para Hora e Minuto $tempo = $difDeHora / (60 * 60); $tempo = explode('.', $tempo); // Aqui divide o restante da hora, pois se não for inteiro, retornará um decimal, o minuto, será o valor depois do ponto. $hora = $tempo[0]; @$minutos = (float) (0) . '.' . $tempo[1]; // Aqui forçamos a conversão para float, para não ter erro. $minutos = $minutos * 60; // Aqui multiplicamos o valor que sobra que é menor que 1, por 60, assim ele retornará o minuto corretamente, entre 0 á 59 minutos. $minutos = explode('.', $minutos); // Aqui damos explode para retornar somente o valor inteiro do minuto. O que sobra será os segundos $minutos = $minutos[0]; //Aqui faz uma verificação, para retornar corretamente as horas, mas se não quiser, só mandar retornar a variavel hora e minutos if (!(isset($tempo[1]))) { if($hora == 1){ return $hora; } else { return $hora; } } else { if($hora == 1){ if($minutos == 1){ return $hora;//'A diferen&ccedil;a &eacute; de ' . $hora . ' Hora e ' .$minutos . ' Minuto.'; } else { return $hora;//'A diferen&ccedil;a &eacute; de ' . $hora . ' Hora e ' .$minutos . ' Minutos.'; } } else { if($minutos == 1){ return $minutos; } else { return $minutos; } } } } */ function calculaTempo($hora_inicial, $hora_final) { $i = 1; $tempo_total; $tempos = array($hora_final, $hora_inicial); foreach($tempos as $tempo) { $segundos = 0; list($h, $m, $s) = explode(':', $tempo); $segundos += $h * 3600; $segundos += $m * 60; $segundos += $s; $tempo_total[$i] = $segundos; $i++; } $segundos = $tempo_total[1] - $tempo_total[2]; $horas = floor($segundos / 3600); $segundos -= $horas * 3600; $minutos = str_pad((floor($segundos / 60)), 2, '0', STR_PAD_LEFT); $segundos -= $minutos * 60; $segundos = str_pad($segundos, 2, '0', STR_PAD_LEFT); return "$minutos"; } ?>
  7. Boa tarde a Todos...Estou com um problema que é o seguinte, preciso mostrar um relatório de controle de estoque que me da todos os produtos sem repetir tenho isso cadastrado Produto A - 10 - 12,00 Produto B - 5 - 13,00 Produto C- 5 - 15,00 Produto A - 12 - 35,00 Produto A - 23 - 55,00 Produto C - 30 - 150,00 Produto B - 5 - 13,00 Preciso Mostrar isso no controle de estoque Produto A - QTD TOTAL - VALOR TOTAL Produto B - QTD TOTAL - VALOR TOTAL Produto C - QTD TOTAL - VALOR TOTAL Meu código é PDO Obrigado
  8. barogana

    avaliar erro de conexão mysql

    a muito que utilizo uma classe de conexão mysql e ela me tem sido muito util e eficiente para o que necessito. http://thephpeffect.com/a-basic-database-connection-manager/ entretanto, hoje estou precisando considerar erros na conexão, e esta classe não os strata. Alguém poderia avaliar o código abaixo, e me orientar como adicionar o retorno de algum erro? Grato class DatabaseManager { private static $_instances = array(); public static function getInstance($instance_name, $connection_info = array()) { if($connection_info) { list($db_host, $db_user, $db_pass, $db_name) = $connection_info; self::$_instances[$instance_name] = new MySQLi($db_host, $db_user, $db_pass, $db_name); } return self::$_instances[$instance_name]; } } function db($instance_name='default', $connection_info = array()){ return DatabaseManager::getInstance($instance_name, $connection_info); }
  9. ViniciusHSAraujo

    Relatórios em PHP - Separar registros por data

    Bom dia pessoal, Sou iniciante na área de desenvolvimento e estou fazendo um sistema para o comércio do meu pai para aprimorar meus conhecimentos em PHP e em lógica de programação no geral. O sistema já está quase pronto, só falta uns relatórios que estou gerando e estou com dificuldade em um: Quero gerar uma listagem com os últimos lançamentos agrupados pela data, tipo assim: No MySQL fiz o seguinte select: SELECT DATE_FORMAT(p.pontuacao_data, '%d/%m/%Y') AS dia, DATE_FORMAT(p.pontuacao_data, '%H:%i') AS horario, u.usuario_nome AS nome, p.usuario_telefone AS telefone, p.pontuacao_valor AS pontuacao_inserida FROM pontuacao p, usuario u WHERE u.usuario_telefone = p.usuario_telefone AND p.pontuacao_valor <> 0 ORDER BY pontuacao_data DESC Ele me retorna todas as informações que preciso, porém não faço ideia (e não soube explicar o google para fazer uma pesquisa que trouxesse o que preciso) como fazer para aparecer a data só no primeiro registro com tal data. Como está atualmente: <table class="table table-bordered table-striped table-vcenter js-dataTable-full" id="historico_lancamentos"> <thead> <tr> <th class="text-center d-none d-sm-table-cell">Dia</th> <th class="text-center d-none d-sm-table-cell">Horario</th> <th class="text-center d-none d-sm-table-cell">Nome do CLiente</th> <th class="text-center d-none d-sm-table-cell">Telefone</th> <th class="text-center d-none d-sm-table-cell">Pontuação Inserida</th> </tr> </thead> <tbody> <?php foreach ($lancamentos as $lancamento) { ?> <tr role="row" class="odd"> <td class="text-center"><?=$lancamento['dia']?></td> <td class="text-center"><?=$lancamento['horario']?></td> <td class="text-center"><?=$lancamento['nome']?></td> <td class="text-center"><?=$lancamento['telefone']?></td> <td class="text-center"><?=$lancamento['pontuacao_inserida']?></td> </tr> <?php } ?> </tbody> </table> Tô usando o plugin DataTables (https://datatables.net/) caso ajude em alguma coisa.. Alguém poderia me dar uma ajuda aí? Agradeço desde já e espero que tenha conseguido explicar rsrs..
  10. Aprenda a instalar tema escuro no phpmyadmin 4.8 de forma fácil e rápido. Vídeo: https://www.youtube.com/watch?v=902EKpP0aOg&feature=youtu.be
  11. Wilson Ferreira da Silva

    Banco de dados MYSQL UOLHOST

    Ola pessoal Alguem fez o acesso ao banco de dados MYSQL do UOLHOSt com java, na minha maquina local acesso normalmente , mas, não consigo acessar no servidor UOLHOST
  12. EHCampos

    PDO SELECT

    Sou novo com PDO estou tentando fazer uma consulta em ordem decrescente porem não esta funcionando $usr= $pdo->prepare("SELECT * FROM usuario WHERE id = :id ORDER BY :rank DESC"); $usr->bindValue(':id', $_GET['id'], PDO::PARAM_INT); $usr->bindValue(':rank',$_GET['rank']); $usr->execute(); Quando executo um $count = $usr->rowCount(); echo $count; Ele mostra corretamente a quantidade de registro. porem quando tento exibir os mesmos em um while($row=$usr->fetch( PDO::FETCH_ASSOC )) Ele não me retorna nem um resultado Se eu inserir diretamente no SELECT funciona normal $usr= $pdo->prepare("SELECT * FROM usuario WHERE id = :id ORDER BY $_GET['rank'] DESC"); $usr->bindValue(':id', $_GET['id'], PDO::PARAM_INT); //$usr->bindValue(':rank',$_GET['rank']); $usr->execute();
  13. Andinho Luiz

    Excluir registros

    Galera o que estou fazendo de errado? Eu tenho uma tabela de cliente: $sql = " CREATE TABLE IF NOT EXISTS cliente ( id_cliente INT(10) AUTO_INCREMENT PRIMARY KEY, tipo CHAR(1) NOT NULL, rSocialNome VARCHAR(20) NOT NULL, cnpjCPF VARCHAR(30) NOT NULL, ieRG VARCHAR(30), situacao BOOL, UNIQUE (cnpjCPF) )ENGINE=MyISAM;"; E tenho outra tabela de ordem de serviço CREATE TABLE IF NOT EXISTS OS ( id_OS INT(5) AUTO_INCREMENT PRIMARY KEY, id_cliente INT(11), data DATETIME, tecnico VARCHAR(30) NOT NULL, equipamento VARCHAR(50) NOT NULL, marca VARCHAR(50) NOT NULL, modelo VARCHAR(50) NOT NULL, serie VARCHAR(100) NOT NULL, condicoes tinytext, defeitos tinytext, acessorios tinytext, solucao tinytext, constraint fk_os_cliente FOREIGN KEY (id_cliente) REFERENCES cliente (id_cliente) )ENGINE=MyISAM;"; Até aqui normal, adiciono os registros na tabela de cliente e na tabela de ordem de serviço. Quando eu vou na tabela de cliente e excluo o cliente, o banco de dados deixa excluir e fica a sujeira na tabela de OS. Como faço para bloquear para não excluir o cliente enquanto existir registros na tabela de ordem de serviço?
  14. Leandro T.

    Otimizar Query

    Bom dia pessoal! Esta query está demorando 4 segundos. Será que teria como otimizá-la, lembrando que já estão indexadas as colunas: id, idtitulos, data e vencimento SELECT duplicatas.vencimento, data, duplicatas.valor, duplicatas.id FROM duplicatas left JOIN ( select IdTitulo, data, Valor from pagtos GROUP BY IdTitulo ORDER BY IdTitulo asc ) AS t on t.idtitulo = duplicatas.id WHERE duplicatas.vencimento BETWEEN '2019-01-01' AND '2019-01-31'
  15. Lucas Pedro Lopes Corrêa

    Exibição condicional em formulário de consulta

    Bom dia pessoal, preciso de ajuda com um código que comecei a modificar. Tenho uma pagina que exibe um formulário de consulta, e nesse formulário existem apenas duas funções, que são: Consultar por nota de entrega e consultar por protocolo. Eu gostaria que quando o usuário setar a função de consulta por protocolo, apareça apenas a caixa do numero do protocolo, e que quando o usuário setar a caixa da nota de entrega apareça a caixa de talão e de numero de nota de entrega. O código da pagina de resultados é esse aqui: function page_render_upload() { global $wpdb; if ($_POST) { if (!function_exists('wp_handle_upload')) { require_once( ABSPATH . 'wp-admin/includes/file.php' ); } $uploadedfile = $_FILES['cf-file']; $upload_overrides = array('test_form' => false); $movefile = wp_handle_upload($uploadedfile, $upload_overrides); if ($movefile && !isset($movefile['error'])) { $arquivo = $movefile['file']; $file = fopen($arquivo, 'r'); $linha_atual = 0; $insert_ok = 0; $insert_erro = 0; while (($line = fgetcsv($file)) !== FALSE) { if ($linha_atual > 0) { $dados = $line[0]; $dados_exp = explode(";", $dados); $NUMERO_PROTOCOLO = $dados_exp[0]; $TALAO_NOTA = $dados_exp[1]; $NUMERO_NOTA = $dados_exp[2]; $DESCRICAO_SERVICO = htmlentities($dados_exp[3]); $DESCRICAO_SITUACAO = htmlentities($dados_exp[4]); $DATA_SITUACAO = $dados_exp[5]; $HORA_SITUACAO = $dados_exp[6]; $DATA_SOLICITACAO = $dados_exp[7]; $HORA_SOLICITACAO = $dados_exp[8]; $NOME_SOLICITANTE = htmlentities($dados_exp[9]); $EMAIL_SOLICITANTE = $dados_exp[10]; $TELEFONE_SOLICITANTE = htmlentities($dados_exp[11]); $CODIGO_VALIDADOR = htmlentities($dados_exp[12]); $sql = $wpdb->query("INSERT INTO {$wpdb->prefix}consulta_dado VALUES (NULL, " . "'$NUMERO_PROTOCOLO', " . "'$TALAO_NOTA'," . "'$NUMERO_NOTA'," . "'$DESCRICAO_SERVICO'," . "'$DESCRICAO_SITUACAO'," . "'$DATA_SITUACAO'," . "'$HORA_SITUACAO'," . "'$DATA_SOLICITACAO'," . "'$HORA_SOLICITACAO'," . "'$NOME_SOLICITANTE'," . "'$EMAIL_SOLICITANTE'," . "'$TELEFONE_SOLICITANTE'," . "'$CODIGO_VALIDADOR')"); if ($sql == 1) { $insert_ok++; } else { $insert_erro++; } } $linha_atual = $linha_atual + 1; } fclose($file); echo ' <div id="lost-connection-notice" class="error"> <p>Resultado da importação.<br> <span class="hide-if-no-sessionstorage"> <b>Sucesso:</b> ' . $insert_ok . '<br> <b>Erro:</b> ' . $insert_erro . ' </span> </p> </div>'; } else { echo ' <div id="lost-connection-notice" class="error"> <p>Resultado da importação.<br> <span class="hide-if-no-sessionstorage"> ' . $movefile['error'] . ' </span> </p> </div>'; } @unlink($arquivo); } echo '<div class="wrap"> <h1 class="wp-heading-inline">Cadastrar resultados de consultas</h1> <hr class="wp-header-end"> <form id="upload_resume_form" action="' . esc_url($_SERVER['REQUEST_URI']) . '" method="post" enctype="multipart/form-data"> <div id="poststuff"> <div id="post-body" class="metabox-holder columns-1"> <div id="post-body-content"> <div id="titlediv"> <div id="titlewrap"> <label for="title"><h3>Selecione o arquivo</h3></label> <input required type="file" name="cf-file" size="40" accept=".txt"/> </div> </div> <div><input type="submit" name="cf-submitted" value="Enviar" class="button button-primary button-large"></div> </div> </div> </form> </div>'; } function page_resultado() { global $wpdb; echo '<div class="row"> <div class="col-sm-12">'; echo '<form id="upload_resume_form" action="' . esc_url($_SERVER['REQUEST_URI']) . '" method="post"> <div class="form-group"> <label for="por">Consultar por</label> <br> <span class="wpcf7-form-control-wrap por"> <select name="por" id="por" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" required> <option value="" selected>Selecione</option> <option value="protocolo">Número do Protocolo</option> <option value="notadeentrega">Número da Nota de Entrega</option> </select> </span> <br> <span class="help-block"></span> </div> <div class="form-group"> <label for="talao_nota">Informe o Talão da Nota: "C", "N" ou "A"</label> <br> <span class="wpcf7-form-control-wrap talao_nota"> <input type="text" name="talao_nota" id="talao_nota" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" /> </span> <br> <span class="help-block"></span> </div> <div class="form-group"> <label for="consulta">Informe o Número</label> <br> <span class="wpcf7-form-control-wrap consulta"> <input required type="text" name="consulta" id="consulta" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" /> </span> <br> <span class="help-block"></span> </div> <div class="form-group"> <div class="col-sm-12"> <input type="submit" name="cf-submitted" value="Consultar" class="wpcf7-form-control wpcf7-submit btn btn-lg btn-primary"> </div> </div> </form>'; if ($_POST) { if (empty($_POST['por'])) { exit; } if ($_POST['por'] == 'protocolo') { $where = " NUMERO_PROTOCOLO = '" . $_POST['consulta'] . "' "; } else { $where = " NUMERO_NOTA = '" . $_POST['consulta'] . "' "; } if (isset($_POST['talao_nota']) && $_POST['talao_nota'] != '') { $where .= " AND TALAO_NOTA = '" . $_POST['talao_nota'] . "' "; } $sql = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}consulta_dado WHERE $where ORDER BY ID DESC LIMIT 1"); echo '<div class="row"> <div class="col-sm-12"> <h4 class="wp-heading-inline">Resultado</h4> <p>'; $total = count($sql); if ($total == 1) { foreach ($sql as $row) { /* * Alterar nome dos serviços */ $servico = "Não informado"; if ($row->DESCRICAO_SERVICO != '' || $row->DESCRICAO_SERVICO != null) { if ($row->DESCRICAO_SERVICO == 'CRC') { $servico = "CRC"; } else if ($row->DESCRICAO_SERVICO == 'Certidao') { $servico = "Certidão"; } else if ($row->DESCRICAO_SERVICO == 'Pessoas Juridicas') { $servico = "Pessoas Jurídicas"; } else if ($row->DESCRICAO_SERVICO == 'Titulos e Documento') { $servico = "Títulos e Documento"; } else if ($row->DESCRICAO_SERVICO == 'Registro Especial') { $servico = "Registros Especiais (Livro E)"; } else if ($row->DESCRICAO_SERVICO == 'Apostilamento') { $servico = "Apostilamento"; } } if ($row->NOME_SOLICITANTE != '' || $row->NOME_SOLICITANTE != null) echo '<b>Solicitante:</b> ' . $row->NOME_SOLICITANTE . '<br>'; if ($row->DESCRICAO_SERVICO != '' || $row->DESCRICAO_SERVICO != null) echo '<b>Serviço:</b> ' . $servico . '<br>'; if ($row->NUMERO_NOTA > 0 || $row->NUMERO_NOTA != null) echo '<b>Número da nota de entrega:</b> ' . $row->NUMERO_NOTA . '<br>'; if ($row->NUMERO_PROTOCOLO > 0 || $row->NUMERO_PROTOCOLO != null) echo '<b>Número do protocolo:</b> ' . $row->NUMERO_PROTOCOLO . '<br>'; if ($row->DATA_SOLICITACAO != '' || $row->DATA_SOLICITACAO != null) echo '<b>Data da Solicitação:</b> ' . $row->DATA_SOLICITACAO . '<br>'; if ($row->DESCRICAO_SITUACAO != '' || $row->DESCRICAO_SITUACAO != null) echo '<b>Situação:</b> ' . $row->DESCRICAO_SITUACAO . '<br>'; if ($row->DATA_SITUACAO != '' || $row->DATA_SITUACAO != null) echo '<b>Data da ultima atualização:</b> ' . $row->DATA_SITUACAO . '<br>'; if ($row->HORA_SITUACAO != '' || $row->HORA_SITUACAO != null) echo '<b>Horário da ultima atualização:</b> ' . $row->HORA_SITUACAO . '<br>'; } }else { echo "Nenhum resultado localizado."; } } echo '</p></div></div>'; echo '</div> </div>'; } add_shortcode('consulta_lista', 'page_resultado'); Caso saibam aonde estou errando, gostaria que me falassem. Esse é meu primeiro post aqui no fórum, espero que tenha feito certo. Obrigado!
  16. guilhermealano@hotmail.com

    Insert array SQL

    Eu estou fazendo uma consulta em cURL e, em seguida, filtrando por parser DOM, mas quando eu faço o INSERT em SQL, ele está escrevendo cada resultado do array de linha em uma linha na mesma coluna.E o que preciso seria gravar o resultado em uma linha por coluna. $html = new simple_html_dom(); $html->load($response); foreach($html->find('table td') as $link => $value) { $sql = "INSERT INTO input_url (ctt1, ctt2, ctt3, ctt4, ctt5, name, date, street, street2, price) VALUES ('101010', '200333299', '5420', '1', '$value0_array', '$value1_array','$value2_array','$value3_array', '$value4_array')"; mysqli_query($connection, $sql) or die(mysqli_error()); ?>
  17. fernandokonopacki

    Problemas com Undefined index:

    Boa noite, estou tendo problemas com meu código, verifiquei varias possíveis causas e não encontrei o que pode ter acontecido. /*Historico de cliente */ function listaHistorico($con){ $historicos = array(); $resu_his = mysqli_query($con, "SELECT * FROM historico"); while($historico = mysqli_fetch_assoc($resu_his)){ array_push($historicos, $historico); } return $historicos; } function insereHistorico($con, $idcliente, $numero, $datahistorico, $texto, $hora){ $query = "INSERT INTO historico (idcliente, numero, datahistorico, texto, hora) VALUES('{$idcliente}', '{$numero}', '{$datahistorico}', '{texto}', '{$hora}' )"; } function buscaHistorico($con, $idcliente) { $query = "SELECT * FROM historico WHERE idcliente = {$idcliente}"; $resu_his = mysqli_query($con, $query); return mysqli_fetch_assoc($resu_his); } <?php include("header.php"); include("conecta.php"); include("banco-clientes.php"); $id = $_GET['id']; $cliente = buscaCliente($con, $id); $idcliente = $_REQUEST['idcliente']; $historico = buscaHistorico($con, $idcliente); ?> /* lista de tabela abaixo */ Mas quando atualizo a página apresenta este erro que está anexado! alguém sabe o que pode estar acontecendo?
  18. Jefferson andre

    Como fazer o campo listado virar um link

    Gostaria de fazer o campo email virar um link do tipo mailto mas nao entendi o porque nao esta funcionando, segue o programinha <?php // fazendo uma conexão com o banco de dados include("conexao.php"); //pesquisa $resultado_videos = $arquivo->query("SELECT * FROM alunos"); if (false === $resultado_videos) { echo mysqli_error(); } echo"<body> <table class='table-responsive' width='50%' border='1' cellpadding='1' cellspacing='0'> <thead> <tr align='center' bgcolor='999999'> <td>Nome</td> <td>Email</td> <tr> </thead> <body>"; //pecorrendo os registros da consulta. while($aux = mysqli_fetch_assoc($resultado_videos)) { $nome = $aux["Nome"]; $email = $aux["Email"]; echo "<tr> <td>" . $nome . "</td> <td>" . $email . "<a href='mailto:$email'> </td> </tr>"; // echo "Nome:".$aux["Nome"]."<br />"; // echo "<b>"."Email:"."</b>".$email." "."<br />"; } echo"</body> </table>"; mysqli_close($arquivo); ?> Quero aproveitar o aprendizado e usar o mesmo principio onde dentro do banco de dados vai ter um caminho absoluto e ao ser clicado abrira um arquivo pdf por exemplo
  19. Olá amigos, estou tentando aprender sobre orientações de objetos e tudo mais e encontrei um tutorial ensinando a fazer um sistema de login bem bacana, com token e serial e decidi tentar. o sistema é o seguinte: O usuario acessa o index que consulta se $bdh esta ok (logado), se nao estiver ele joga para a pagina de login e cria um cookie e session com os dados para ver as tentativas e etc. se ele ficar errando, bloqueia e etc, se ele acessar cria os cookies e sessions com "id de usuario", "token", "serial". até ai ta funcionando tudo redondinho... até que entra a bendita função: public static function createRecord($dbh, $user_username, $user_id) { $query = "INSERT INTO sessions (session_userid, sessions_token, sessions_serial) VALUES (:user_id, :token, :serial;)"; $dbh->prepare("DELETE FROM sessions WHERE sessions_userid= :sessions_userid;")->execute(array(':sessions_userid' => $user_id)); $token = func::createString(30); //funciona $serial = func::createString(30); //funciona func::createCookie($user_username, $user_id, $token, $serial); //funciona func::createSession($user_username, $user_id, $token, $serial); //funciona $stmt = $dbh->prepare($query); $stmt->execute(array(':user_id' => $user_id, ':token' => $token, ':serial' => $serial)); } todas as demais funçoes que estao na mesma functions.php estão funcionando. a ideia desse sistema de login é verificar se a $dbh esta 100%, entao exibir o conteudo da pagina, conforme codigo abaixo: <?php if (!func::checkLoginState($dbh)) { header("location:login.php"); exit(); } echo 'olá ' . $_SESSION['username'] . '!'; ?> a função checkLoginState public static function checkLoginState($dbh) { if (!isset($_SESSION)) { session_start(); } if (isset($_COOKIE['userid']) && isset($_COOKIE['token']) && isset($_COOKIE['serial'])) { $query = "SELECT * FROM sessions WHERE sessions_userid = :userid AND sessions_token = :token AND sessions_serial = :serial;"; $userid = $_COOKIE['userid']; $token = $_COOKIE['token']; $serial = $_COOKIE['serial']; $stmt = $dbh->prepare($query); $stmt->execute(array(':userid' => $userid, ':token' => $token, ':serial' => $serial)); $row = $stmt->fetch(PDO::FETCH_ASSOC); if ($row['sessions_userid'] > 0) { if ( $row['sessions_userid'] == $_COOKIE['userid'] && $row['sessions_token'] == $_COOKIE['token'] && $row['sessions_serial'] == $_COOKIE['serial'] ) { if ( $row['sessions_userid'] == $_SESSION['userid'] && $row['sessions_token'] == $_SESSION['token'] && $row['sessions_serial'] == $_SESSION['serial'] ) { return true; } else { func::createSession($_COOKIE['username'], $_COOKIE['userid'], $_COOKIE['token'], $_COOKIE['serial']); return true; } } } } } ele não está armazenando dados na tabela sessions entao tbm nao consulta ai a conferencia da $dbh da erro e nada loga alguem consegue me dar uma luz??? estou a 2 dias batendo a cabeça nisso valeu
  20. Bom dia amigos, Estou tendo problemas com a conexao no meu banco de dados. O seguinte código "testador" conecta perfeitamente: <?php $banco = "nome_banco"; $usuario = "usuario"; $senha = "senha"; $hostname = "banco.servidor"; $conn = mysql_connect($hostname,$usuario,$senha); mysql_select_db($banco) or die( "Não foi possível conectar ao banco MySQL"); if (!$conn) {echo "Não foi possível conectar ao banco MySQL. "; exit;} else {echo "Parabéns!! A conexão ao banco de dados ocorreu normalmente!. ";} mysql_close(); ?> porém o código que preciso que conecte não funciona nem a pau.... este: <?php class User { private $dbHost = "nome_banco.servidor"; private $dbUsername = "usuario"; private $dbPassword = "senha"; private $dbName = "banco_nome"; private $userTbl = ''; function __construct(){ if(!isset($this->db)){ // Connect to the database $conn = new mysqli($this->dbHost, $this->dbUsername, $this->dbPassword, $this->dbName); if($conn->connect_error){ die("Failed to connect with MySQL: " . $conn->connect_error); }else{ $this->db = $conn; } } } function checkUser($userData = array()){ if(!empty($userData)){ $prevQuery = "SELECT * FROM ".$this->userTbl." WHERE oauth_provider = '".$userData['oauth_provider']."' AND oauth_uid = '".$userData['oauth_uid']."'"; $prevResult = $this->db->query($prevQuery); if($prevResult->num_rows > 0){ $query = "UPDATE ".$this->userTbl." SET first_name = '".$userData['first_name']."', last_name = '".$userData['last_name']."', email = '".$userData['email']."', gender = '".$userData['gender']."', locale = '".$userData['locale']."', picture = '".$userData['picture']."', link = '".$userData['link']."', modified = '".date("Y-m-d H:i:s")."' WHERE oauth_provider = '".$userData['oauth_provider']."' AND oauth_uid = '".$userData['oauth_uid']."'"; $update = $this->db->query($query); }else{ $query = "INSERT INTO ".$this->userTbl." SET oauth_provider = '".$userData['oauth_provider']."', oauth_uid = '".$userData['oauth_uid']."', first_name = '".$userData['first_name']."', last_name = '".$userData['last_name']."', email = '".$userData['email']."', gender = '".$userData['gender']."', locale = '".$userData['locale']."', picture = '".$userData['picture']."', link = '".$userData['link']."', created = '".date("Y-m-d H:i:s")."', modified = '".date("Y-m-d H:i:s")."'"; $insert = $this->db->query($query); } $result = $this->db->query($prevQuery); $userData = $result->fetch_assoc(); } return $userData; } } ?> Exibe a seguinte msg: Estou tentando implementar um sistema de login usando SDK do Facebook, todos os testes com o aplicativo deram certo, porém na hora de armazenar os dados no BD esta dando esse erro de conexão. TO batendo a cabeça nisso a madrugada inteira e para finalizar... agora esse erro maldito... oq será que corrige isso? alguém consegue me ajudar? muito obrigado pela ateção.
  21. Kellyfer

    Tamanho de texto no Banco de dados

    Ola criei um Banco de dados usando tipo TEXT, mas tem alguns textos que consigo postar com até 60 Mil caracteres e outros não aceita nem 20 mil caracteres, alguém pode me explicar isso, e se tem alguma maneira de poder postar sem limitação?? obrigada pela atenção
  22. Tenho duas tabelas, a titulospagar e a titulosavulsos e em ambas eu tenho o campo placaMotorista e gostaria de somar os valores de cada uma Gostaria de fazer uma query, juntando os dados delas em determinado tempo, dando GROUP BY em placaMotorista. Fiz as duas queries a seguir, mas os valores retornam errados (muito grandes para cada placa). SELECT SUM(a.valorTitulo) AS geralPlaca, SUM(b.valorTitulo) AS manutencaoPlaca, b.placaMotoristaTitulo AS placa FROM titulospagar a, titulosavulsos b WHERE a.dataVencimentoTitulo BETWEEN '$dataDe' AND '$dataAte' && b.dataTitulo BETWEEN '$dataDe' AND '$dataAte' && a.placaMotoristaTitulo = b.placaMotoristaTitulo && b.placaMotoristaTitulo != 'Nenhum' GROUP BY a.placaMotoristaTitulo, b.placaMotoristaTitulo ORDER BY a.placaMotoristaTitulo ASC, b.placaMotoristaTitulo ASC SELECT SUM(titulospagar.valorTitulo) AS geralPlaca, SUM(titulosavulsos.valorTitulo) AS manutencaoPlaca, titulospagar.placaMotoristaTitulo AS placa FROM titulospagar INNER JOIN titulosavulsos ON titulospagar.placaMotoristaTitulo != 'Nenhum' && titulospagar.placaMotoristaTitulo = titulosavulsos.placaMotoristaTitulo && titulospagar.dataVencimentoTitulo BETWEEN '$dataDe' AND '$dataAte' && titulosavulsos.dataTitulo BETWEEN '$dataDe' AND '$dataAte' GROUP BY titulospagar.placaMotoristaTitulo, titulosavulsos.placaMotoristaTitulo ORDER BY titulospagar.placaMotoristaTitulo ASC Em ambas retorna o mesmo valor para cada placa, mas o valor que retorna é errado. Exemplo do erro com o SQLFiddle: http://www.sqlfiddle.com/#!9/4cdd5c/1 Se alguém puder me ajudar, agradeço desde já!!
  23. Fala pessoal, tudo certo? Eu não tenho muita experiência em PHP/Mysql. Não programava nada desde 2009 então to beeeem enferrujado haha Mas é o seguinte, eu criei uma tabela com as seguintes informações: Dados do cliente: Dados da ordem de serviço: Cada usuário que se cadastra no sistema recebe uma ID auto-incrementada; Todo chamado aberto recebe a ID deste usuário para que só ele consiga visualizá-la; O número da OS também é auto-incrementada; Fiz tudo certinho a parte de receber os dados no Mysql (depois de muito trabalho kkkk), mas o que não estou conseguindo fazer é o seguinte: Preciso que ele me retorne todas as OSs com a ID do cliente (no caso do print, é o cliente 1). "Ahhh, mas como funciona esse App Inventor?" No meu caso, eu criei o php para printar com "echo" cada campo separado por vírgula, e no App Inventor eu faço a separação, ele reconhece que na vírgula ele tem que separar e criar um Index na mesma ordem que ele recebeu as informações. Segue exemplo abaixo: No caso a variável "os_list" vai receber a lista completa relacionada ao chamado que foi aberto, cada informação seguida da "vírgula", e vai reconhecer que ela é o ponto de separação para gerar a lista. No print acima informei que a nona informação deverá vir como uma mensagem na tela. Que seria o "osnum" no meu php: <?php include_once "conexao.php"; $id = $_POST['id']; $tipo = $_POST['tipo']; $status = $_POST['status']; $descricao = $_POST['descricao']; $endereco = $_POST['endereco']; $bairro = $_POST['bairro']; $cidade = $_POST['cidade']; $timestamp = date("Y-m-d H-i-s"); $sql1 = $dbcon->query("SELECT * FROM tbos WHERE id='$id'"); $sql2 = $dbcon->query("INSERT INTO tbos(id,tipo,status,descricao,endereco,bairro,cidade,dataabertura) VALUES ('$id','$tipo','$status','$descricao','$endereco','$bairro','$cidade','$timestamp')"); if($sql2) { echo "abertura_os_ok,"; while($dados = $sql1->fetch_array()) { echo $dados['id']; echo ","; echo $dados['tipo']; echo ","; echo $dados['status']; echo ","; echo $dados['descricao']; echo ","; echo $dados['endereco']; echo ","; echo $dados['bairro']; echo ","; echo $dados['cidade']; echo ","; echo $dados['osnum']; echo ","; echo $dados['dataabertura']; } } else { echo "abertura_os_erro"; } ?> Este código está funcionando certinho, o problema é que, do jeito que estou fazendo ele só me retorna a primeira linha da tabela, o que preciso mesmo é que ele selecione todas as linhas que contenham o "$id" do cliente, e imprima todas as linhas com o echo, no App Inventor vou dar um jeito de gerar uma lista com todas as linhas e umas 4 colunas ("osnum", "dataabertura", "datafechamento" e "status"). (Desculpem se meu código está um tanto "simples", eu utilizei o que aprendi nessas duas últimas semanas apenas para o funcionamento do sistema, sei apenas estas funções que usei, pode ser que exista alguma outra coisa que gere da maneira que preciso, mas não sei ainda rs). Fico agradecido desde já, e se precisarem de informações mais específicas me solicitem que mando pra vcs. Abraço!
  24. carlinhos.eltz

    Listando os dados de uma coluna em uma linha

    Boa tarde amigos! Estou com uma situação aqui q preciso retornar os dados de uma coluna em apenas uma linha. Tenho uma tabela de nome ano_atuacao, q tem id_ano_atuacao, id_atleta e descricao, onde o mesmo id_atleta possui várias descrições, conforme os anos q ele atuou no clube. Eu gostaria de retornar em apenas uma linha estes dados, por exemplo: 2013/2014/2015/2019. Desde já, obrigado pelo auxílio.
  25. Alexandre Mar

    [RESOLVIDO] Código de identificação PHP

    Eu posso uma tabela com os seguintes dados: E criei o seguinte código para pegar os dados dessa tabela e com base nesses dados colectados ter o tipo de ocupação que preciso para atualizar a tabela, porém por algum motivo quando faço isto o tipo de ocupação não está sendo colectado... Seria algum erro de sintaxe que não estou conseguindo perceber ou algo do tipo? Agradeço a ajuda dos senhores desde já! Código: if($TipoDist=="X"){ if($DetecDist=="Possui"){ if($SpkDist=="Possui"){ if($SaidaDist=="apenas uma saída"){ if($DistMax=="55"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="55"){ $DivDist=utf8_decode("todas as ocupações"); } } }else{ if($SaidaDist=="apenas uma saída"){ if($DistMax=="40"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="50"){ $DivDist=utf8_decode("todas as ocupações"); } } } }else{ if($SpkDist=="Possui"){ if($SaidaDist=="apenas uma saída"){ if($DistMax=="40"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="50"){ $DivDist=utf8_decode("todas as ocupações"); } } }else{ if($SaidaDist=="apenas uma saída"){ if($DistMax == "25"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="35"){ $DivDist=utf8_decode("todas as ocupações"); } } } } }elseif ($TipoDist=="Y"){ if($DetecDist=="Possui"){ if($SpkDist=="Possui"){ if($SaidaDist=="apenas uma saída"){ if($DistMax=="65"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="75"){ $DivDist=utf8_decode("todas as ocupações"); } } }else{ if($SaidaDist=="apenas uma saída"){ if($DistMax=="50"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="60"){ $DivDist=utf8_decode("todas as ocupações"); } } } }else{ if($SpkDist=="Possui"){ if($SaidaDist=="apenas uma saída"){ if($DistMax=="50"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="60"){ $DivDist=utf8_decode("todas as ocupações"); } } }else{ if($SaidaDist=="apenas uma saída"){ if($DistMax=="35"){ $DivDist=utf8_decode("todas as ocupações"); } }else{ if($DistMax=="45"){ $DivDist=utf8_decode("todas as ocupações"); } } } } }else{ if($DetecDist=="Possui"){ if($SpkDist=="Possui"){ if($SaidaDist=="apenas uma saída"){ if($DistMax=="80"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } }else{ if($DistMax=="90"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } } }else{ if($SaidaDist=="apenas uma saída"){ if($DistMax=="65"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } }else{ if($DistMax=="75"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } } } }else{ if($SpkDist=="Possui"){ if($SaidaDist=="apenas uma saída"){ if($DistMax=="65"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } }else{ if($DistMax=="75"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } } }else{ if($SaidaDist=="apenas uma saída"){ if($DistMax=="50"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } }else{ if($DistMax=="60"){ $DivDist=utf8_decode("C,D,E,F,G3,G4,H,I,L,M"); }else{ $DivDist=utf8_decode("A,B,G1,G2 E J"); } } } } }
×

Important Information

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