Ir para conteúdo
Fórum Script Brasil
  • 0

ARMAZENAMENTO E COMPARAÇÃO DE DADOS - PHP JSCRIPT


Marcos Renato

Pergunta

Olá,

Bom vou postar o codigo em seguida eu explico:

<div class="box">

<script type="text/javascript">
  // obter o id do aluno
  var id = window.prompt("Digite o Id do Aluno:", ""); 
</script>

					<?php 
							
							//PASSA JAVA PARA PHP 
							$idaluno = "<script>document.write(id)</script>";
							
							//FOREACH QUE GERA LINHA DA BASE
							foreach($students as $row){
								
					                        // $row[nome do campo] é um array que criei em controller 
								if($row['student_id']==$idaluno)
								echo "igual";
								
								else
								echo "Me fu### novamente";
							
								
							
						   }
							?>	



			   
                            
</div>


O detalhe é o seguinte, destá forma se eu digitar '1' (que é o valor do id do estudante) ele dá erro mas se eu fizer:

if($row['student_id']=='1')

ele funciona! Porque isso? como resolver? alguma ideia ai rapazeada?

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Na verdade cara temos um problema de conceito rsrs.

var id = window.prompt("Digite o Id do Aluno:", "");

Faz com que o que for digitado no prompt vá para a variável id, porém isso...

//PASSA JAVA PARA PHP 
$idaluno = "<script>document.write(id)</script>";

Não passa o resultado do prompt para a variável $idaluno.

Como o PHP só roda do lado servidor você só pode passar dados para ele via os verbos do HTTP (GET, POST, DELETE, PUT...)

Um jeito seria você pegar a variável "id" e fazer um XMLHttpRequest(Ajax) ou usar um formulário para enviar esses dados para o servidor.

Quando chegar em casa eu posto um exemplo.

Link para o comentário
Compartilhar em outros sites

  • 0

Em ajax poderia ser assim (Obs. são dois arquivos):

#Arquivo acessado pelo usuário
<script type="text/javascript">
	var id = window.prompt("Digite o Id do Aluno:", "");
	var request = $.ajax({
		url: "aluno.php",
		type: "POST",
		data: { id : id },
		dataType: "html"
	});
	request.done(function( msg ) {
		$( "#log" ).alert( msg );
	});
	request.fail(function( jqXHR, textStatus ) {
		alert( "Request failed: " + textStatus );
	});
</script>

#Arquivo aluno.php
<?php
if ($_SERVER['RESQUEST_METHOD'] != 'POST') {
	return 'Método Inválido!';
}
$id = isset($_POST['id']) ? (int) $_POST['id'] : '';
if (empty($id)) {
	return 'ID Inválido => '.$_POST['id'];
}
$con = mysql_connect($server, $username, $password);
mysql_select_db($database, $con);
$aluno = mysql_query('SELECT * FROM alunos WHERE id = '.$id, $con);
$aluno = mysql_fetch_assoc($aluno);
if(!$aluno) {
	return 'Nenhum aluno encontrado com este ID => '.$_POST['id'];
}
return 'Nome => "'.$aluno['nome'].'"';
?>

Espero ter ajudado

Tudo de bom.

Link para o comentário
Compartilhar em outros sites

  • 0

Olá,

Markus estou tentando fazer o codigo que me passou e sem querer abusar mas ficou assim:

#rel_declaracao.php

<div>
<script type="text/javascript">
	var id = window.prompt("Digite o Id do Aluno:", "");
	var request = $.ajax({
		url: "rel_declaracao_ctrl.php",
		type: "POST",
		data: { id : id },
		dataType: "php"
	});
	request.done(function( msg ) {
		$( "#log" ).alert( msg );
	});
	request.fail(function( jqXHR, textStatus ) {
		alert( "Request failed: " + textStatus );
	});
</script>
</div>

#rel_declaracao_ctrl.php

<div>

<?php
if ($_SERVER['RESQUEST_METHOD'] != 'POST') {
	return 'Método Inválido!';
}
$id = isset($_POST['id']) ? (int) $_POST['id'] : '';
if (empty($id)) {
	return 'ID Inválido => '.$_POST['id'];
}

foreach($students as $row){

if($_POST['id']==$row['student_id']) {
	return 'Nenhum aluno encontrado com este ID => '.$_POST['id'];
	
}

return 'Nome => "'.$row['name'].'"';

}

?>

</div>

#admin.php (Controler de admin para gerenciar paginas * existe multiplos logins)

/**********MANAGE RELATORIO DECLARACAO / RELATORIO DECLARACAO ********************/
    function rel_declaracao_ctrl($param1 = '', $param2 = '', $param3 = '')
    {
        if ($this->session->userdata('admin_login') != 1)
            redirect('login', 'refresh');
        
        $page_data['students']   = $this->db->get('student')->result_array();
        $page_data['page_name']  = 'rel_declaracao_ctrl';
        $page_data['page_title'] = get_phrase('manage_relatorio_declaracao_ctrl');
	$this->load->view('index', $page_data);
        
    }

O sistema está dando parseerro ... você saberia me dizer se tem algo errado? :S

Editado por Marcos Renato
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...