Autor Zpráva
PatiseQ
Profil
Takto vypadá formulář u kterého si nevím rady, chci tam udělat aby jak je Sem napište o vašem vozu nebylo vidět když není nic vyplněno a aby se objevilo pouze když ten dotyční vyplní že má auto.
      <form action="send1.php" method="post" onSubmit="return odeslat(this);" target="upload">
          <b><font color="white" size="2"><u>Tvůj email:</u></b> <input name="email" size="25" value="@" class="text"> <br>
          <b><u>Dotazník pro nás:</u></b><br><br>
          <table border="1">
          <tr><td rowspan="2">Bylo ti 18?</td><td><input type="Radio" name="vek" value="Ano">Ano</td></tr>
          <tr><td><input type="Radio" name="vek" value="Ne">Ne</td></tr>
          <tr><td rowspan="2">Máš řidičák?</td><td><input type="Radio" name="rid" value="Ano">Ano</td></tr>
          <tr><td><input type="Radio" name="rid" value="Ne">Ne</td></tr>
          <tr><td rowspan="2">Máš auto?</td><td><input type="Radio" name="aut" value="Ano">Ano</td></tr>
          <tr><td><input type="Radio" name="aut" value="Ne">Ne</td></tr>
          <tr><td colspan="2"><strong>Sem napište o vašem vozu</strong></td></tr>
          <tr><td>Tvoje přezdívka:</td><td> <input type="text" name="prezdivka"></td></tr>
          <tr><td>Tvoje jméno:</td><td> <input type="text" name="jmeno"></td></tr>
          <tr><td>Typ auta:</td><td> <input type="text" name="typ"></td></tr>
          <tr><td>Rok výroby:</td><td> <input type="text" name="rok"></td></tr>
          <tr><td rowspan="2">Typ motoru:</td><td><input type="Radio" name="mot" value="Benzin">Benzin</td></tr>
          <tr><td><input type="Radio" name="mot" value="Nafta">Nafta</td></tr>
          <tr><td>Obsah motoru:</td><td> <input type="text" name="obsah"></td></tr>
          <tr><td>Výbava auta:</td><td> <input type="text" name="vybava"></td></tr>
          <tr><td>Úpravy na autě:</td><td> <input type="text" name="uprav"></td></tr>
          <tr><td>Hudba v autě:</td><td> <input type="text" name="hudba"></td></tr>
          <tr><td>Foto:</td><td><input type="file" name="file"></td></tr>
          </table>
          </font>
          <br><input type="submit" value="Odeslat dotazník" class="button" disabled> <input type="reset" value="Vymazat vše" class="button"><br><br>
          </form>
A tady je odesílací formulář a tam potřebuju jen nastavit když se vyplní že nemá auto aby to nedělalo kontroly těch položek pod Sem napište o vašem vozu a když dá že auto má aby to použilo dané podmínky.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <title>Dotazy - odesílání</title>
  </head>
  <body><br><br><br><br><center>
<?php 
$error = false;
$email = $_POST['email'];
$to = "patanovak@seznam.cz"; 
$extra = "From: ".$email."\r\nReply-To: ".$email."\r\n"; 
$subject = "Vzkaz od ".$_POST['jmeno']."\nDotaz"; 
$mess = 
"Dotaz: \n".$_POST['zprava']." \n";

if($email==NULL XOR $email=="@")
{
echo "špatně vyplněný email<br>";
$error = true;
}
if($_POST['jmeno']==NULL)
{
echo "nevyplněné jméno<br>";
$error = true;
}
if($_POST['vek']==NULL)
{
echo "nevyplněný věk<br>";
$error = true;
}

if($_POST['rid']==NULL)
{
echo "nevyplněný řidičák<br>";
$error = true;
}

if($_POST['aut']==NULL)
{
echo "nevyplněné auto<br>";
$error = true;
}

if($_POST['prezdivka']==NULL)
{
echo "nevyplněná přezdívka<br>";
$error = true;
}

if($_POST['typ']==NULL)
{
echo "nevyplněný typ auta<br>";
$error = true;
}

if($_POST['rok']==NULL)
{
echo "nevyplněný rok výroby<br>";
$error = true;
}

if($_POST['mot']==NULL)
{
echo "nevyplněný typ motoru<br>";
$error = true;
}

if($_POST['obsah']==NULL)
{
echo "nevyplněný obsah motoru<br>";
$error = true;
}

if($_POST['vybava']==NULL)
{
echo "nevyplněná výbava<br>";
$error = true;
}

if($_POST['uprav']==NULL)
{
echo "nevyplněný úpravy<br>";
$error = true;
}

if($_POST['hudba']==NULL)
{
echo "nevyplněné hudební vybavení<br>";
$error = true;
}
if($error!=true)
{
if (mail ($to, $subject, $mess, $extra))
echo "<p><strong>Váš e-mail byl úspešne odeslán</strong>.</p>";
else
echo "<p> Email nebyl odeslán došlo k nějaké chybě </p>";
}
?> <br><form NAME="winform"><INPUT TYPE="button" VALUE="Zavřít okno"
onClick="window.close();"></form> </center><br><br><br><br><br>
</body>
</html>



úprava něco jsem zapoměl:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <title>Dotazy - odesílání</title>
  </head>
  <body><br><br><br><br><center>
<?php 
$error = false;
$email = $_POST['email'];
$to = "patanovak@seznam.cz"; 
$extra = "From: ".$email."\r\nReply-To: ".$email."\r\n"; 
$subject = "Vzkaz od ".$_POST['jmeno']."\n"; 
$mess = 
"Věk: ".$_POST['vek']." \nŘidičák: ".$_POST['rid']."\nAuto: ".$_POST['aut']."\nNěco o autě \nPřezdívka: ".$_POST['prezdivka']."\nTyp Auta: ".$_POST['typ']."\nRok výroby: ".$_POST['rok']."\nTyp motoru: ".$_POST['mot']."\nObsah: ".$_POST['obsah']."\nVýbava auta: ".$_POST['vybava']."\nÚpravy na autě: ".$_POST['uprav']."\nHudba v autě: ".$_POST['hudba']."\nFoto: \n".$_POST['file']."\n";

if($email==NULL XOR $email=="@")
{
echo "špatně vyplněný email<br>";
$error = true;
}
if($_POST['jmeno']==NULL)
{
echo "nevyplněné jméno<br>";
$error = true;
}
if($_POST['vek']==NULL)
{
echo "nevyplněný věk<br>";
$error = true;
}

if($_POST['rid']==NULL)
{
echo "nevyplněný řidičák<br>";
$error = true;
}

if($_POST['aut']==NULL)
{
echo "nevyplněné auto<br>";
$error = true;
}

if($_POST['prezdivka']==NULL)
{
echo "nevyplněná přezdívka<br>";
$error = true;
}

if($_POST['typ']==NULL)
{
echo "nevyplněný typ auta<br>";
$error = true;
}

if($_POST['rok']==NULL)
{
echo "nevyplněný rok výroby<br>";
$error = true;
}

if($_POST['mot']==NULL)
{
echo "nevyplněný typ motoru<br>";
$error = true;
}

if($_POST['obsah']==NULL)
{
echo "nevyplněný obsah motoru<br>";
$error = true;
}

if($_POST['vybava']==NULL)
{
echo "nevyplněná výbava<br>";
$error = true;
}

if($_POST['uprav']==NULL)
{
echo "nevyplněný úpravy<br>";
$error = true;
}

if($_POST['hudba']==NULL)
{
echo "nevyplněné hudební vybavení<br>";
$error = true;
}
if($error!=true)
{
if (mail ($to, $subject, $mess, $extra))
echo "<p><strong>Váš e-mail byl úspešne odeslán</strong>.</p>";
else
echo "<p> Email nebyl odeslán došlo k nějaké chybě </p>";
}
?> <br><form NAME="winform"><INPUT TYPE="button" VALUE="Zavřít okno"
onClick="window.close();"></form> </center><br><br><br><br><br>
</body>
</html>
Skript je takhle ale ještě navíc bych potřeboval aby se v emailu objevilo FOTKA a ne jen její název
Kubo2
Profil
PatiseQ:
'Sem napiš o svojom autě:' tam nikde nevidím...

A ty podmínky máš tak zprasení, že se v tom ani bůh nevyzná, ne ještě někdo odtud.
------- > Radím Ti, použij switch()...


switch(promenna)
{
case 'hodnota':
php_funkcia();
break;

case 'ina_hodnota':
php_funkcia();
break;

case 'tretia_hodnota':
php_funkcia();
break;
}



switch
môže mať aj viac hodnôt.
Keeehi
Profil
Kubo2:
switch se používá místo if, elseif, elseif, elseif, else což není jeho případ, on to má v pořádku.

'Sem napiš o svojom autě:' tam nikde nevidím
Tak trochu hledej, je to tam, i když ne slovo od slova.


PatiseQ:
HTML by si zasloužilo trochu ještě poupravit. Proč používáš font, když CSS evidentně znáš?

<form action="send1.php" method="post" onSubmit="return odeslat(this);" target="upload">
    <b><font color="white" size="2"><u>Tvůj email:</u></b> 
    <input name="email" size="25" value="@" class="text"> 
    <br><b><u>Dotazník pro nás:</u></b>
    <br>
    <br>          
    <table border="1">          
        <tr>
            <td rowspan="2">Bylo ti 18?</td>
            <td><input type="Radio" name="vek" value="Ano">Ano</td>
        </tr>          
        <tr>
            <td><input type="Radio" name="vek" value="Ne">Ne</td>
        </tr>          
        <tr>
            <td rowspan="2">Máš řidičák?</td>
            <td><input type="Radio" name="rid" value="Ano">Ano</td>
        </tr>          
        <tr>
            <td><input type="Radio" name="rid" value="Ne">Ne</td>
        </tr>          
        <tr>
            <td rowspan="2">Máš auto?</td>
            <td><input type="Radio" name="aut" value="Ano" onclick="document.getElementById('oaute').style.display='block';">Ano</td>
        </tr>                    
        <tr>
            <td><input type="Radio" name="aut" value="Ne" onclick="document.getElementById('oaute').style.display='none';">Ne</td>
        </tr>   
    </table>          
    <table border="1" id="oaute">       
        <tr>
            <td colspan="2"><strong>Sem napište o vašem vozu</strong> pokud jste vybrali, že ho máte.</td>
        </tr>          
        <tr>
            <td>Tvoje přezdívka:</td>
            <td><input type="text" name="prezdivka"></td>
        </tr>          
        <tr>
            <td>Tvoje jméno:</td>
            <td><input type="text" name="jmeno"></td>
        </tr>          
        <tr>
            <td>Typ auta:</td>
            <td><input type="text" name="typ"></td>
        </tr>          
        <tr>
            <td>Rok výroby:</td>
            <td><input type="text" name="rok"></td>
        </tr>          
        <tr>
            <td rowspan="2">Typ motoru:</td>
            <td><input type="Radio" name="mot" value="Benzin">Benzin</td>
        </tr>          
        <tr>
            <td><input type="Radio" name="mot" value="Nafta">Nafta</td>
        </tr>          
        <tr>
            <td>Obsah motoru:</td>
            <td><input type="text" name="obsah"></td>
        </tr>          
        <tr>
            <td>Výbava auta:</td>
            <td><input type="text" name="vybava"></td>
        </tr>          
        <tr>
            <td>Úpravy na autě:</td>
            <td><input type="text" name="uprav"></td>
        </tr>          
        <tr>
            <td>Hudba v autě:</td>
            <td><input type="text" name="hudba"></td>
        </tr>          
        <tr>
            <td>Foto:</td>
            <td><input type="file" name="file"></td>
        </tr>          
    </table>
    <script type="text/javascript">
    <!--
        document.getElementById("oaute").style.display="none";
    //-->
    </script>          
    </font>          
    <br>
    <input type="submit" value="Odeslat dotazník" class="button" disabled> 
    <input type="reset" value="Vymazat vše" class="button">
    <br>
    <br>          
</form>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>  
    <head>  
        <meta http-equiv="content-type" content="text/html; charset=windows-1250">  
        <title>Dotazy - odesílání
        </title>  
    </head>  
    <body>
        <br>
        <br>
        <br>
        <br>
        <center>
<?php 
$noerror = true;
$email = empty($_POST['email']) ? "" : $_POST['email'];
$jmeno = empty($_POST['jmeno']) ? "" : $_POST['jmeno'];
$to = "patanovak@seznam.cz"; 
$extra = "From: $email\r\nReply-To: $email\r\n"; 
$subject = "Vzkaz od $jmeno\n"; 
 
if ( empty($email) XOR $email=="@" ) {
    echo "špatně vyplněný email<br>";
    $noerror = false;
}

if ( empty($_POST['jmeno']) ) {
    echo "nevyplněné jméno<br>";
    $noerror = false;
}

if ( empty($_POST['vek']) ) {
    echo "nevyplněný věk<br>";
    $noerror = false;
}
 
if ( empty($_POST['rid']) ) {
    echo "nevyplněný řidičák<br>";
    $noerror = false;
}

if($noerror) { 
    $mess = "Věk: ".$_POST['vek']." \nŘidičák: ".$_POST['rid']."\n"; 
}
 
if ( empty($_POST['aut']) ) {
    echo "nevyplněné auto<br>";
    $noerror = false;
}
elseif ( $_POST['aut']=="Ano" ) {

    if ( empty($_POST['prezdivka']) ) {
        echo "nevyplněná přezdívka<br>";
        $noerror = false;
    }

    if ( empty($_POST['typ']) ) {
        echo "nevyplněný typ auta<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['rok']) ) {
        echo "nevyplněný rok výroby<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['mot']) ) {
        echo "nevyplněný typ motoru<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['obsah']) ) {
        echo "nevyplněný obsah motoru<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['vybava']) ) {
        echo "nevyplněná výbava<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['uprav']) ) {
        echo "nevyplněný úpravy<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['hudba']) ) {
        echo "nevyplněné hudební vybavení<br>";
        $noerror = false;
    }    
    
    if ( isset($_FILES["file"] ) {
        if ( $_FILES["file"]["error"] > 0 ) {
            echo "problém s nahráním obrázku<br />";
            $noerror = false;
        }
        else {
            if( preg_match("~(.jpg$|.jepg$|.gif$|.png$)~i",$_FILES["file"]["name"]) ) {
                if ( !move_uploaded_file($_FILES["file"]["tmp_name"], "./fotky/".$_FILES["file"]["name"]) ) {
                    echo "nepovedlo se nahrát obrázek<br>";
                    $noerror = false;
                }
            }
            else {
                echo "špatný typ obrázku<br>";
                $noerror = false;
            }
        }
    }
    else {
        echo "nevybrán obrzek<br>";
        $noerror = false;
    }
  
    if($noerror) { 
        $mess .= "Auto: ".$_POST['aut']."\nNěco o autě \nPřezdívka: ".$_POST['prezdivka']."\nTyp Auta: ".$_POST['typ']."\nRok výroby: ".$_POST['rok']."\nTyp motoru: ".$_POST['mot']."\nObsah: ".$_POST['obsah']."\nVýbava auta: ".$_POST['vybava']."\nÚpravy na autě: ".$_POST['uprav']."\nHudba v autě: ".$_POST['hudba']."\nFoto: ["name"]."\n]http://example.com/fotky/".$_FILES["file"]["name"]."\n";
    }
}
else {
    $mess .= "Auto: ".$_POST['aut']."\n";
}
 
 
if($noerror)
{
    if (mail ($to, $subject, $mess, $extra))
        echo "<p><strong>Váš e-mail byl úspešne odeslán</strong>.</p>";
    else
        echo "<p> Email nebyl odeslán došlo k nějaké chybě </p>";
}
?> 
            <br>
            <form NAME="winform">
                <INPUT TYPE="button" VALUE="Zavřít okno" onClick="window.close();">
            </form> 
        </center>
        <br>
        <br>
        <br>
        <br>
        <br>
    </body>
</html>
PatiseQ
Profil
Děkuji mnohokrát pomohlo mi to, jen sem tam upravil syntaxe ale když chci odeslat i s tím že tam dám že mám auto tak vyplním vše i obrázek a napíše mi to že obrázek nebyl vybrán
mám to teď takhle:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>  
    <head>  
        <meta http-equiv="content-type" content="text/html; charset=windows-1250">  
        <title>Dotazy - odesílání
        </title>  
    </head>  
    <body>
        <br>
        <br>
        <br>
        <br>
        <center>
<?php 
$noerror = true;
$email = empty($_POST['email']) ? "" : $_POST['email'];
$jmeno = empty($_POST['jmeno']) ? "" : $_POST['jmeno'];
$to = "patanovak@seznam.cz"; 
$extra = "From: $email\r\nReply-To: $email\r\n"; 
$subject = "Vzkaz od $jmeno\n"; 
 
if ( empty($email) XOR $email=="@" ) {
    echo "špatně vyplněný email<br>";
    $noerror = false;
}
 
if ( empty($_POST['jmeno']) ) {
    echo "nevyplněné jméno<br>";
    $noerror = false;
}
 
if ( empty($_POST['vek']) ) {
    echo "nevyplněný věk<br>";
    $noerror = false;
}
 
if ( empty($_POST['rid']) ) {
    echo "nevyplněný řidičák<br>";
    $noerror = false;
}
 
if($noerror) { 
    $mess = "Věk: ".$_POST['vek']." \nŘidičák: ".$_POST['rid']."\n"; 
}
 
if ( empty($_POST['aut']) ) {
    echo "nevyplněné auto<br>";
    $noerror = false;
}
elseif ( $_POST['aut']=="Ano" ) {
 
    if ( empty($_POST['prezdivka']) ) {
        echo "nevyplněná přezdívka<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['typ']) ) {
        echo "nevyplněný typ auta<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['rok']) ) {
        echo "nevyplněný rok výroby<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['mot']) ) {
        echo "nevyplněný typ motoru<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['obsah']) ) {
        echo "nevyplněný obsah motoru<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['vybava']) ) {
        echo "nevyplněná výbava<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['uprav']) ) {
        echo "nevyplněný úpravy<br>";
        $noerror = false;
    }
 
    if ( empty($_POST['hudba']) ) {
        echo "nevyplněné hudební vybavení<br>";
        $noerror = false;
    }    
    
    if ( isset($_FILES["file"] )) {
        if ( $_FILES["file"]["error"] > 0 ) {
            echo "problém s nahráním obrázku<br />";
            $noerror = false;
        }
        else {
            if( preg_match("~(.jpg$|.jepg$|.gif$|.png$)~i",$_FILES["file"]["name"]) ) {
                if ( !move_uploaded_file($_FILES["file"]["tmp_name"], "./fotky/".$_FILES["file"]["name"]) ) {
                    echo "nepovedlo se nahrát obrázek<br>";
                    $noerror = false;
                }
            }
            else {
                echo "špatný typ obrázku<br>";
                $noerror = false;
            }
        }
    }
    else {
        echo "nevybrán obrázek<br>";
        $noerror = false;
    }
  
    if($noerror) { 
        $mess .= "Auto: ".$_POST['aut']."\nNěco o autě \nPřezdívka: ".$_POST['prezdivka']."\nTyp Auta: ".$_POST['typ']."\nRok výroby: ".$_POST['rok']."\nTyp motoru: ".$_POST['mot']."\nObsah: ".$_POST['obsah']."\nVýbava auta: ".$_POST['vybava']."\nÚpravy na autě: ".$_POST['uprav']."\nHudba v autě: ".$_POST['hudba']."\nFoto:" .$_FILES['file']['name']. "\nFoto: ".$_FILES['name']."\nhttp://www.mtkk.own.com/fotky/".$_FILES["file"]["name"]."\n";
    }
}
else {
    $mess .= "Auto: ".$_POST['aut']."\n";
}
 
 
if($noerror)
{
    if (mail ($to, $subject, $mess, $extra))
        echo "<p><strong>Váš e-mail byl úspešne odeslán</strong>.</p>";
    else
        echo "<p> Email nebyl odeslán došlo k nějaké chybě </p>";
}
?> 
            <br>
            <form NAME="winform">
                <INPUT TYPE="button" VALUE="Zavřít okno" onClick="window.close();">
            </form> 
        </center>
        <br>
        <br>
        <br>
        <br>
        <br>
    </body>
</html>
PatiseQ
Profil
Ještě jinak co kdyby se ta fotka hodila jako příloha v emailu? prosím poraďte :)))a ne do textu emailu?:
Alphard
Profil
Ten upload už funguje? Ve vašem formu nevidím atribut enctype. Na odesílání příloh k mailům se můžete podívat do PHP FAQ, ale stejně je tam jen odkaz na Nette\Mail a PHPMailer. Napsat to sám není triviální a kvůli jednomu skriptu ani moc efektivní.
PatiseQ
Profil
aha a jak by to mělo vypadat už jsem zkoušel snad všecko a nefunguje mi to prosím o celý skript jestli by to nevadilo

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: