

JurisCode
Members-
Content count
27 -
Joined
-
Last visited
Community Reputation
0 ComumAbout JurisCode

Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
SELECT dentro de um FOREACH imprimindo apenas a última string da array. Como fazer para imprimir todos?
JurisCode posted a topic in PHP
OLÁ A TODOS, Boa tarde. Preciso de ajuda com o seguinte script. eu tenho uma array que é a seguinte: array (size=7) 0 => string 'gu' (length=2) 1 => string 'tr' (length=2) 2 => string 'fr' (length=2) 3 => string 'ip' (length=2) 4 => string 'al' (length=2) 5 => string 'po' (length=2) 6 => string 'xa' (length=2) Cada string da array de duas letra é a abreviatura de uma cidade; eu quero fazer uma pesquisa na base da dados para cada sigla dessa para ver qual a cidade correspondente. Como vai ser necessariamente um resultado apenas, eu tive que usar o foreach. Tipo foreach($array as $variavel); { $busca = $conn->query("SELECT * FROM tabela WHERE sigla = '$variavel'"); $resultado = $busca->fetch_assoc(); echo ' - '. $resultado['significado_da_sigla']; } } Não está funcionando perfeitamente, mas imprime apenas o último resultado. Eu já tentei uma variável para ir acumulando o resultado, tipo if (empty('$resultado_busca')) { $resultado_busca = $resultado['significado_da_sigla']; } else { $resultado_busca = $resultado_busca . ' - ' . $resultado['significado_da_sigla']; } ou seja, se a variável foi vazia (da primeira vez), então vai criar uma variável com o primeiro resultado, se a variável já existir (das outras vezes), então a variável vai ser igual à variavel anteriormente criado adicionando um traço e o próximo resultado. E depois, em vez de imprimir a variável com fetch_assoc $resultado['significado_da_sigla'] eu imprimiria a variável &resultado_busca, que em cada ciclo iria acumulando os resultados, mas também não está funcionando, essa não imprime nada na tela. Alguém pode dar uma ajuda? OBRIGADO, DESDE JÁ -
while Tem como fazer select sem while? É necessariamente um resultado
JurisCode posted a topic in PHP
eu tenho uma array que é a seguinte: array (size=7) 0 => string 'gu' (length=2) 1 => string 'tr' (length=2) 2 => string 'fr' (length=2) 3 => string 'ip' (length=2) 4 => string 'al' (length=2) 5 => string 'po' (length=2) 6 => string 'xa' (length=2) eu quero fazer uma pesquisa na base da dados para cada sigla dessa para ver qual o significado correspondente. Como vai ser necessariamente um resultado apenas, não tem motivo para usar o while, mas fazer via foreach. Tipo foreach($array as $variavel); { $busca = $conn->query("SELECT * FROM tabela WHERE sigla = '$variavel'"); $resultado = $busca->fetch_assoc(); echo ' - '. $resultado['significado_da_sigla']; } } Mas tá imprimindo só o último resultado. -
Eu criei um código que faz o seguinte: Ele pega siglas de uma tabela de dados e apresenta apenas as siglas constantes entre as variáveis $origem e $destino. Depois eu faço um explode e pesquiso cada sigla em outra tabela, procurando o que significa aquela sigla. Faço um foreach e dentro do foreach um select na tabela que tem o significado de cada sigla (tabela cidades) peço para imprimir na tela, mas imprime só o último resultado. Onde como faço para aparecer todos? if ($_COOKIE['user'] == 0) { ?> <!-- parte que vaia aparecer quando o usuário não estiver logado --> <?php } elseif ($_COOKIE['user'] > 0 && $origem == " " && $destino == " ") { ?> <!-- Esta parte vai aparecer só quando o usuário estiver logado. vAI CRIAR UM FORMULÁRIO DE BUSCA--> <section id='about' class="s-about"> <div class="row section-header has-bottom-sep" data-aos="fade-up"> <div class="col-full"> <h3 class="subhead subhead--dark">PROCURAR CARONAS</h3> <h1 class="display-1 display-1--light">Você está procurando uma carona</h1> </div> </div> <!-- end section-header --> <div class="row about-desc" data-aos="fade-up"> <div class="col-full"> <p> No formulário abaixo selecione as cidades de origem e de destino - O sistema vai identificar qual a direção em que você está pretendendo ir e vai listar as rotas possíveis. </p> <p align="center"> <?php $sql = 'SELECT id, sigla, cidade FROM cidades order by cidade'; $result = $conn->query($sql); echo '<form method=get action="#about"><SELECT name="origem" style="font-size: 25px; font-weight: bold; display: inline-block;">'; if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo '<OPTION value="' . $row["sigla"]. '">' . $row["cidade"] . '</option>'; }} else { echo "0 results"; } echo '</select> | '; $result = $conn->query($sql); echo '<SELECT name="destino" style="font-size: 25px; font-weight: bold; display: inline-block;">'; if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo '<OPTION value="' . $row["sigla"]. '">' . $row["cidade"] . '</option>'; }} else { echo "0 results"; } echo '</select> <Input type="submit" value="Procurar"> </form>'; ?> </div> </div> <!-- end about-desc --> <!-- end about-stats --> <div class="about__line"></div> </section> <!-- end s-about --> </p> <!-- Final da parte de procurar caronas --> <?php } elseif (!empty($_GET['origem']) && !empty($_GET['destino'])) { <!-- ESTA PARTE É O RESULTADO DA BUSCA FEITA PELO FORMUÁRIO --> $origem = $_GET['origem']; $destino = $_GET['destino']; $sql = "SELECT * FROM rotas WHERE rota LIKE '%$origem%$destino%' limit 2"; $result = $conn->query($sql); echo utf8_encode('<section id=about" class="s-about"> <div class=col-full> <P>A descrição do trajeto abaixo apresenta TODA A LINHA. Para escolher a melhor linha, observe a partir do seu ponto de partida. Caso queira, você pode ainda clicar em cada rota para ver por onde cada rota passa</p>'); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo '<p style="background-color: #000000; color: #FFFFFF;">' . utf8_encode($row['descricao']) . ' - '; $rotatotal = $row['rota']; $positioni = mb_strpos($rotatotal, $origem); $positionf = mb_strpos($rotatotal, $destino); $totalstr = mb_strlen($rotatotal); $rotaescol = mb_substr($rotatotal, $positioni, $positionf - $positioni + 2); $rotarray = explode(' ', $rotaescol); foreach($rotarray as $ct); { $sql2 = "SELECT * FROM cidades WHERE sigla = '$ct'"; $rescit = $conn->query($sql2); if ($rescit->num_rows > 0) { while($row2 = $rescit->fetch_assoc()) { echo ' - '. $row2['cidade']; }} else{ echo ''; } }}} } else { echo '<section id="about" class="s-about">0 resultsNão era para estar aparecendo isto."</section>'; } echo '</div></section> | '; <!-- FINAL DO SCRIPT -->
-
[RESOLVIDO] Como não permitir quebra de linha de jeito nenhum
JurisCode replied to JurisCode's topic in HTML e CSS
consegui um parâmetro CSS que resolveu o meu problema -
[RESOLVIDO] Como não permitir quebra de linha de jeito nenhum
JurisCode replied to JurisCode's topic in HTML e CSS
Eu acredito que alguém tenha experiência no assunto e saiba qual a propriedade que faz isso. -
[RESOLVIDO] Como não permitir quebra de linha de jeito nenhum
JurisCode replied to JurisCode's topic in HTML e CSS
mas eu já tinha avisado que em um arquivo novo ficava em uma linha. o problema é que essas caixas eram grandes, tinham outras cores, texto pequeno dentro de uma caixa grande, cheio de outros atributos. O que eu fiz foi dar uma css nova para as duas caixas, mas eu não estou localizando a css que anule o fato de quebrar linha para tudo. Se eu coloco duas caixas e um texto entre uma caixa e outra, fica uma caixa em uma linha, o texto na segunda linha, ocupando toda a extensão da div e a segunda caixinha de texto em outra linha. Tenho certeza de que seja algum atributo CSS que esteja forçando essa quebra de linha e que ainda está faltando eu colocar no meu código -
[RESOLVIDO] Como não permitir quebra de linha de jeito nenhum
JurisCode posted a topic in HTML e CSS
Eu tenho um problema de CSS que está me queimando a pestana. Peguei uma template com um CSS que é verdadeiro ninho de rato, mas de boa, decidi colocar todos os tributos css na própria tag do form. Deu certo em parte porque os campos ficaram do tamanho, cor e outros atributos, mas essas duas caixinhas, nem com todo o espaço do mundo eu consegui colocar elas na mesma linha: <div style="display: visible; color: #FFFFFF; border: none; background: #3C3C3C; width: 100%; white-space:nowrap;"> <center> <input type="text" style="width:120px; height: 20px; padding:1px 1px; background:#DDDDDD; color:#3C3C3C; margin: 0px 0px 0px 0px;"> <input type="password" style="width:120px; height: 20px; padding:1px 1px; background:#DDDDDD; color:#3C3C3C; margin: 0px 0px 0px 0px;"> </center> </div> nada de mais, em qqr outra página fica em uma única linha, mas nesta página não. Como que anula isso. Nem o nowrap deu jeito. -
um link para duas ações #ancora e link dentro do iframe (_target)
JurisCode replied to JurisCode's topic in HTML e CSS
estou usando php -
um link para duas ações #ancora e link dentro do iframe (_target)
JurisCode posted a topic in HTML e CSS
é assim. em um lugar do site vai ter um link daqueles que posicionam a rolagem na âncora. no entanto, nessa ancoragem vai ter um IFRAME e eu gostaria que o link, ao mesmo tempo, mudasse a página do IFRAME pelo atributo _target e posicionasse o scroll pela ancora. Tem como fazer as duas coisas no mesmo click? -
Contar quantos caracteres até uma determinada palavra e imprimir apenas os caracteres a partir dela, contar quantos caracteres depois e imprimir só até ela
JurisCode replied to JurisCode's topic in PHP
eu consegui, mas não estou entendendo: $rotatotal = "gu tr fr ip cs pe um cr ta ci ju dc ab pa ma sa ma mg ar ro ca lo"; $positioni = mb_strpos($rotatotal, 'ip'); $positionf = mb_strpos($rotatotal, 'ca'); $totalstr = mb_strlen($rotatotal); $rotaescol = mb_substr($rotatotal, $positioni, $positionf - $positioni + 2); echo $rotaescol; o + 2 eu entendi porque não ele pega a posição em que o positionf começa e não termina, mas por que eu tive que subtrair a positioni (inicial) da positionf (final)? O tutorial que eu assisti disse que essa função pegaria a posição na rotatotal e não reiniciaria a contagem. -
Obrigado, tenho certeza que sim, mas se você tiver sugestão de como melhorar essa base de dados, estou disposto a ler o que você escrever
-
Olá, amigos programadores Eu tenho uma célula da minha base de dados com siglas representando cidades constantes em uma rota. no caso do exemplo a rota seria: "guaíra, terra roxa, francisco alves, iporã, cafezal do sul, perobal, umuarama, cruzeiro d'oeste, tapejara, cianorte, jussara, dr. camargo, água boa, paiçandu, maringá, sarandi, marialva, mandaguari, arapongas, rolândia, cambé e londrina". no entanto, eu vou colocar na página duas caixas de seleção. A primeira para selecionar a cidade de origem e a outra para selecionar a cidade de destino. Daí vai fazer uma busca nesses itinerários se tem algum itinerário que passa por essas duas cidades. Até aí tudo bem, bem facinho, vou usar o LIKE para origem e destino, o problema é que eu gostaria de criar uma variável apenas com as siglas das cidades, a partir da cidade de origem até o destino. Por exemplo, eu seleciono de UM até MA (umuarama a maringá) em vez de exibir todo o conteúdo da célula que tenha as duas cidades pesquisada (a rota compatível), mostrar apenas a partir da cidade de início, até a cidade de fim selecionadas. Eu sei o procedimento, mas não sei como implementar: Eu acho que eu deveria salvar todo o conteúdo dentro de uma variável, contar quantos caracteres há do início até a cidade de origem e exibir apenas o resultado a partir dessa cidade. Depois, contar quantos caracteres há da cidade de destino até o final e exibir apenas o resultado até essa. Eu sei fazer isso em asp, mas estou migrando meus scripts para o PHP, daí eu gostaria de saber como faz isso em PHP. Desde já, obrigadão.
-
Olá, amigos programadores e administradores de banco de dados. eu tenho uma base de dados uma das tabelas com o nome de cidades, sendo que para cada cidade eu atribuí uma sigla de duas letras. outra tabela com as rotas das cidades. Por exemplo: tudo isso dentro de uma única célula, não são várias colunas. isso porque a quantidade de cidades varia muito. no caso do exemplo a rota seria: "guaíra, terra roxa, francisco alves, iporã, cafezal do sul, perobal, umuarama, cruzeiro d'oeste", etc. no entanto, eu vou colocar duas caixas de seleção. A primeira para selecionar a cidade de origem e a outra para selecionar a cidade de destino. Daí vai fazer uma busca nesses itinerários se tem algum itinerário que passa por essas duas cidades. Até aí tudo bem, bem facinho, o problema é que eu gostaria de mostrar somente a partir da cidade de origem até a cidade de destino. Por exemplo, se em vez de exibir na tela todo o conteúdo daquela célula de gu (guaíra) até lo (londrina) caso a pessoa selecionar de "um" (umuarama, 7ª cidade do itinerário) até ma (maringá, 15ª cidade do itinerário), pegar dos valores de dentro daquela célua apenas a partir de "um" até "ma" e não retornar todas as siglas. Qualquer alteração na estrutura da base de dados para facilitar o meu trabalho ou qualquer dica para facilitar a programação, eu agradeço.