Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

omor

Erro ao usar explode

Recommended Posts

Erro ao usar explode

 

if(isset($_POST['check'])){
$opcao = $_POST['check'];
$opcoes_esc = explode(',' ,$opcao);
echo $opcoes_esc;
}
está dando esse erro
Warning: explode() expects parameter 2 to be string, array gi in

Compartilhar este post


Link para o post
Compartilhar em outros sites

A variável de $_POST['check'] é um array e não uma string.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A variável de $_POST['check'] é um array e não uma string.

mensagem de erro fala que está esperando 2 parâmetros,

Compartilhar este post


Link para o post
Compartilhar em outros sites

explode() expects parameter 2 to be string, array gi in

Tradução:

explode() espera que o parâmetro 2 seja string, array entregue

 

O parâmetro 2 é o $_POST['check'], ou seja, é um array e não uma string.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Antes de tudo..
Utilize sempre o var_dump(SUA_VARIAVEL);
Assim você entende oq esta vindo nela...
Se mesmo com a tradução do @Gabriel Heming ainda resta duvida, segue um exemplo para tentar lucidar...
index.html
<!DOCTYPE HTML>
<html lang="pt-br">
<head>
	<meta charset="UTF-8">
	<title></title>
</head>
<body>
	<form action="recebe.php" method="post" >
		<h3>Frutas</h3>
		<label>
			<input type="checkbox" name="check[]" value="banana" /> Banana 
		</label>
		<br />
		<label>
			<input type="checkbox" name="check[]" value="melao"/> Melão 
		</label>
		<br />
		
		
		<input type="submit" value="Enviar" />
	</form>

	
</body>
</html>

Repare que o name="check[]" é um array....

 

Ou seja para você tratar eles individualmente você pode simplesmente executar eles em um loop e tratar individual.

 

recebe.php:

<?php

$opcoes = $_POST['check'];
foreach($opcoes as $opcao){
	echo $opcao;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu desculpem- me os moderadores, estava precisando do implode e não do explode como

Mencionei no tópico.

Resolvi desta forma

$opção_esc = implode($_POST["check"],', ');

Dessa forma grava no banco de dados todos os checkbox marcados

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Wilherme
      Boa tarde galera, preciso de uma ajuda,
       
      Tenho um gráfico no meu Power Bi porem apresenta o erro abaixo:
       

       
      já habilitei as funções porém ainda com erro.
       
       
      Obrigado.
    • Por 4Unknow
      Bom dia comunidade Imasters.

      Venho aqui tratar de um problema dúvida que estou tendo com um layout que estou tentando usar o formulário php dele.
      Quando clico em enviar ele me enviar para um arquivo .php  (assets/vendor/simple-forms/sendmail.php)

      Ele não envia o e-mail, acredito que deveria aparecer uma mensagem que o contato foi enviado corretamente.
      Vou deixar os arquivos aqui em anexo quem puder me ajudar nessa, ficaria muito grato.
       
      Link Website (wetransfer.com)
    • Por Algorithm
      Olá a todos
       
      Eu estou codificando um exemplo de uso do GraphQL com Nodejs, mas eu estou recebendo um erro de syntax relacionado a [ : ] [ Dois Pontos ], mas eu comparei meu codigo, com o da documentação oficial e esta tudo certo. Será que alguem, conseguiria achar o erro ?
       
      OBS: Esta incluso neste post [ Exemplo Documentação, Meu Exemplo, Mensagem de Erro, Código Completo ]
       
      Exemplo Documentação
      module.exports = /* GraphQL */ ` type Client { id: ID! name: String age: Int products: [Product] } type Query { clients: [Client] client(id: ID!): Client } type Mutation { addClient(name: String!, age: Int!): Client } `  
      Meu Exemplo
      const typeDefs = ` type Pessoa { _id: ID _codigo: Float _nome: String _idade: Int _email: String } input inputPessoa { _codigo: Float _nome: String _idade: Int _email: String } type Query { resposta: String saudacao(nome: String!): String findPessoaOne(codigo: Float): Pessoa findPessoa(input: inputPessoas): [Pessoa] } type Mutation { insertPessoa(input: inputPessoa): Pessoa updatePessoa(codigo: Float, input: inputPessoa) Pessoa deletePessoa(codigo: Float) [Pessoa] } `;  
      Mensagem de Erro
      C:\Users\Core\node\node_modules\graphql\language\parser.js:1413 throw (0, _syntaxError.syntaxError)( ^ GraphQLError: Syntax Error: Expected ":", found Name "Pessoa". at syntaxError (C:\Users\Core\node\node_modules\graphql\error\syntaxError.js:15:10) at Parser.expectToken (C:\Users\Core\node\node_modules\graphql\language\parser.js:1413:40) at Parser.parseFieldDefinition (C:\Users\Core\node\node_modules\graphql\language\parser.js:847:10) at Parser.optionalMany (C:\Users\Core\node\node_modules\graphql\language\parser.js:1510:28) at Parser.parseFieldsDefinition (C:\Users\Core\node\node_modules\graphql\language\parser.js:831:17) at Parser.parseObjectTypeDefinition (C:\Users\Core\node\node_modules\graphql\language\parser.js:803:25) at Parser.parseDefinition (C:\Users\Core\node\node_modules\node_modules\graphql\language\phql\language\parser.js:171:23) at Parser.many (C:\Users\Core\node\node_modules\graphql\language\parser.js:1529:26) at Parser.parseDocument (C:\Users\Core\node\node_modules\graphql\language\parser.js:121:25) at parse (C:\Users\Core\node\node_modules\graphql\language\parser.js:32:17) { path: undefined, locations: [ { line: 26, column: 57 } ], extensions: [Object: null prototype] {} }  
      Codigo Completo
      // Requires const express = require('express'); const GraphQL_HTTP = require('express-graphql'); const { mergeSchemas } = require('@graphql-tools/schema'); // Run // const connect = MongoClient.connect(''); const app = express(); const getCode = () => { return 10 }; // GraphQL Definitions || Query and Mutation const typeDefs = ` type Pessoa { _id: ID _codigo: Float _nome: String _idade: Int _email: String } input inputPessoa { _codigo: Float _nome: String _idade: Int _email: String } type Query { resposta: String saudacao(nome: String!): String findPessoaOne(codigo: Float): Pessoa findPessoa(input: inputPessoas): [Pessoa] } type Mutation { insertPessoa(input: inputPessoa): Pessoa updatePessoa(codigo: Float, input: inputPessoa) Pessoa deletePessoa(codigo: Float) [Pessoa] } `; // Functions const resolvers = { Query: { resposta: function() { return `GraphQL Conectado com Sucesso...`; }, saudacao: function(_, args) { return `Olá ${args.nome}! Seja Muito Bem Vindo(a) a GraphQL!!!! ` }, findPessoaOne: function(_, args) { return db.collection('GraphQL-Pessoa').findOne({codigo: args.codigo}) .then((result) => { return result; }); }, findPessoa: function(_, args) { return db.collection(`GraphQL-Pessoa`).find(args.input).toArray() .then((result) => { return result; }); }, Mutation: { insertPessoa: function(_, args) { args.input.codigo = getCode(); return db.collection(`GraphQL-Pessoa`).insertOne(args.input) .then((result) => { return result.ops[0]; }); }, updatePessoa: function(_, args) { return db.collection('GraphQL-Pessoa').updateOne({codigo: args.codigo}, {$set: args.input}) .then((result) => { if(result.result.n > 0) return `Registro Alterado com Sucesso!`; else return `Ocorreu um erro ao alterar o registro`; }); }, deletePessoa: function(_, args) { return db.collection(`GraphQL-Pessoa`).deleteOne({codigo: args.codigo}) .then((result) => { if(result.result.n > 0) return `Registro Deletado com Sucesso!`; else return `Ocorreu um erro ao deletar o registro`; }); } } } }; const schema = mergeSchemas({ typeDefs: typeDefs, resolvers: resolvers }) // Listen app.listen(3005, () => { console.log(`Servidor Rodando na Porta 3005`); })  
       
      Obrigado
    • Por Jack Oliveira
      Bom dia galera
      Preciso de uma ajuda, preciso separar numero usando explode eu ja tentei e não deu certo
      pesquisei tambem e não achei nada a respeito apenas separa os que esta ex:12,23./55
      quero separar uns numero que estão juntos ex: 90 fazer ficar 9 0
      <? //Valores com Desconto $ValorA = '99,90'; $ValorA = explode(',',$ValorA); //$ValorB = explode(' ','90'); $ValorB = explode('','90'); echo '<div class="value-component"> <p class="value-text"><span>por</span></p> <p class="value-caractere">R$</p> <p class="value-1">'.$ValorA[0].'</p> <p class="value-small">,'.$ValorB[0].'<span>'.$ValorB[1].'</span></p> <p class="value-year"><span>/mês</span></p> </div>'; /* se eu deixar direto dentro do html aqui ex: <p class="value-small">,'.$ValorA[1].'<span></span></p> os numero fica fora do padrão do que é pra ser entende? Então para ficar padronizado terá que ficar assim <p class="value-small">,'.$ValorB[0].'<span>'.$ValorB[1].'</span></p> */ ?>  
    • Por Kefatif
      Prezados, bom dia.
       
      Preciso da ajuda dos Srs!
       
      Não estou conseguindo localizar o erro no arquivo abaixo.
       
      Ao clicar no botão ele me envia a mensagem: "Erro ao registrar estoque !"
       
      Poderiam me ajudar?
       
      Agradeço desde já pela ajuda.
       
      <?php include_once 'autenticacao.php'; include_once'../../conexao.php'; include_once '../../funcoes.php'; include_once '../../decodepost.php'; if( !isset($_POST["cont"]) or !isset($_SESSION["cnes"]) ){ ECHO "Erro"; }else{ $cnes = $_SESSION["cnes"]; $idusuario = $_SESSION["idusuario"]; $cont = $_POST["cont"]; $sql = "insert into LESAO_ESTOQUE values(null,curdate(), '".$cnes."',".$idusuario.")"; if(mysqli_query($con, $sql)){ $idestoque = mysqli_insert_id($con); $coberturas = 0; for($i=1 ; $i<=$cont; $i++){ if(isset($_POST[$i])){ if($_POST[$i]<=0){ }else{ $qtd = $_POST[$i]; $sqlqtd = "insert into LESAO_REL_ESTOQUE_COBERTURAS values(".$idestoque.", ".$i.", ".$qtd.", ".$idusuario.")"; if(mysqli_query($con, $sqlqtd)){ $coberturas = $coberturas+1; } } } } $grav = "Registrado estoque de ".$coberturas." coberturas !"; }else{ $grav = "Erro ao registrar estoque !"; } //5- Fechar a conexão mysqli_close($con); ?> <script> alert('<?php echo $grav; ?>'); location.href="estoque-registrar.php"; </script> <?php } ?>  
×

Informação importante

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