Ir ao conteúdo
  • Cadastre-se

PHP comparar dois numeros php


Posts recomendados

Eu tenho que fazer uma comparação entre dois numeros, usei html5/php, mas tem algum erro na linha 20 e 21:

<!DOCTYPE html>

<html lang="pt-br">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Comparando Números</title>

</head>

<body>

    <form action="Comparando.php" method="post">

        <input type="numero" name="numero1">            

        <input type="numero" name="numero2">

        <br>

        <br>

        <input type="submit" value="Comparar">

    </form>    

    <br>

    <br>



    <?php

        $numero1 = $_POST["numero1"];

        $numero2 = $_POST["numero2"];



        echo $numero1 . " x " . $numero2 . "<br>";



        if($numero1 != ""){

            if($numero1 == $numero2){

                echo "Números iguais!";

            } elseif($numero1 > $numero2){

                echo "Primeiro é maior";

            } else{

                echo "Segundo maior";

            }

        }

    ?>

</body>

</html>

 

Link para o comentário
Compartilhar em outros sites

Oi @Berus-kun !

 

2 horas atrás, Berus-kun disse:

Eu tenho que fazer uma comparação entre dois numeros, usei html5/php, mas tem algum erro na linha 20 e 21:

Certo! Eu testei seu código e vi que na linha onde tem:

2 horas atrás, Berus-kun disse:

<form action="Comparando.php" method="post">

Deveria esta dessa forma:

<form action="" method="post">

 

O atributo action do formulário informa ao form em que arquivo as informações inseridas no formulário serão tratadas, nesse caso nos queremos que essas informações sejam tratadas na mesma pagina do formulário, por isso deixamos esse atributo em branco!

 

2 horas atrás, Berus-kun disse:

<!DOCTYPE html>

<html lang="pt-br">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Comparando Números</title>

</head>

<body>

    <form action="Comparando.php" method="post">

        <input type="numero" name="numero1">            

        <input type="numero" name="numero2">

        <br>

        <br>

        <input type="submit" value="Comparar">

    </form>    

    <br>

    <br>

 

    <?php

        $numero1 = $_POST["numero1"];

        $numero2 = $_POST["numero2"];

 

        echo $numero1 . " x " . $numero2 . "<br>";

 

        if($numero1 != ""){

            if($numero1 == $numero2){

                echo "Números iguais!";

            } elseif($numero1 > $numero2){

                echo "Primeiro é maior";

            } else{

                echo "Segundo maior";

            }

        }

    ?>

</body>

</html>

Se você tiver alguma duvida de como postar seus códigos, eu recomendo que leia esse tópico aqui!

Link para o comentário
Compartilhar em outros sites

  • Moderador

@Berus-kun Você pode separar as coisas.  Cria o arquivo index.html só com o formulário, e o arquivo comparando.php  só para receber os dados e fazer a comparação.

Evite de fazer tudo na mesma página, embora seja possível.

 

De qualquer forma, qual o erro que está dando?

Link para o comentário
Compartilhar em outros sites

Olá!
Quando o script é executado pela primeira vez, o array global $_POST ainda não tem os índices numero1 e numero2.
Se estiver usando php7+, defina um valor padrão assim:

$numero1 = $_POST['numero1'] ?? 0;

$numero2 = $_POST['numero2'] ?? 0;

Dessa forma, se $_POST['numero1'] não existir, o valor de $numero1 será igual a zero.

Você pode ler mais sobre a chegada do null coalescing operator ao php, aqui: https://www.php.net/manual/en/migration70.new-features.php


Outra sugestão de solução:
você pode colocar o trecho php dentro de uma condição:
 

<?php
if (isset($_POST['numero1'])) {
  $numero1 = $_POST["numero1"];

  $numero2 = $_POST["numero2"];


  echo $numero1 . " x " . $numero2 . "<br>";


  if ($numero1 != "") {

    if ($numero1 == $numero2) {

      echo "Números iguais!";
    } elseif ($numero1 > $numero2) {

      echo "Primeiro é maior";
    } else {

      echo "Segundo maior";
    }
  }
}

Dessa forma, o trecho em php só vai funcionar, depois q a variável numero1 for postada

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!