Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z $_POST
billy235
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 1
Dołączył: 2.10.2007

Ostrzeżenie: (0%)
-----


Witam

Kod
  
   echo "coś tam coś tam";                               //to sie wypisuje
   $zmienna = $_POST['zmienna'];
   if ($zmienna)
   {
     $zmien_ocene=mysql_query("UPDATE tabela SET zmienna='$zmienna' WHERE id='3'");  //to sie wykonuje
     echo "cokolwiek";                                     //nie wypisuje tego
   }


Dlaczego tak jest??
Go to the top of the page
+Quote Post
PawelC
post
Post #2





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Wklej cały kod to Ci powiem gdzie jest błąd. A po co dałeś to if ($zmienna) skoro niewskazałeś jaki ma spełnić warunek. I powiedz mi co ma ten kod zrobić?

Zobacz to:
  1. <?php
  2. echo "coś tam coś tam";
  3.  $zmienna = $_POST['zmienna'];
  4.  $zmienna="UPDATE tabela SET zmienna='$zmienna' WHERE id='3'";
  5.  if (mysql_query($zmienna)){
  6.  print "Cokolwiek";}
  7. ?>


Ten post edytował ExPlOiT 5.11.2007, 22:56:56
Go to the top of the page
+Quote Post
billy235
post
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 1
Dołączył: 2.10.2007

Ostrzeżenie: (0%)
-----


Kod
$ocena_ad = $_POST['ocena_ad'];

echo "coś ";           // pokaże się
if ($ocena_ad)
{

    echo "coś tam";           //nie pokaże się
    if ($ocena_ad >= 1 && $ocena_ad <= 5)  // zabezpieczna przed wysłaniem zawyrzonych lub zaniżonych ocen
    {
         echo "coś tam coś";           //nie pokaże się

                $zmiana_oceny = $ocena + $ocena_ad;
        $ile_ocen_new = $ile_ocen+1;
        $zmien_ocene=mysql_query("UPDATE $galeria SET ocena='$zmiana_oceny' WHERE id='$id_fot'");
        $zmien_ocene1=mysql_query("UPDATE $galeria SET ile_ocen='$ile_ocen_new' WHERE id='$id_fot'");
        $sr = round($zmiana_oceny/$ile_ocen_new,2);
        $zmien_ocene2=mysql_query("UPDATE $galeria SET ocena_pok='$sr' WHERE id='$id_fot'");
        
             // powyższe zapytania wykonają się oczywiście dla odpowiednich ocen
          
             echo "coś tam coś tam ";           //nie pokaże się

         }
        else  // dla postrachu tych którzy wysyłają oszukańczą ocenę
        {
                    $twoje_ip=pobierz_ip();
                    
                echo "<h2>wykryto próbę oszustwa, twój adres ip: $twoje_ip został zapisany</h2>";  // nie pokaże się
              if ($_SERVER['HTTP_REFERER'])
                    {  
                         $adres_ataku=$_SERVER['HTTP_REFERER'];
                         echo "adres strony z której to zrobiłeś to: $adres_ataku ";   // nie pokaże się
                    }    
                    
        }

}



To też jest fragment bo całość to duży skrypt IMGallery chcę trochę to zmodyfikowałem bo mi ludzie oceny zawyżone wysyłali. dozwolone są oceny 1 2 3 4 5 a ktoś z innej strony wysyłał formularz który niósł ocenę np 3333. oryginalnie nie ma takiego zabezpieczenia.

Cytat
A po co dałeś to if ($zmienna)

jeśli zmianna bedzie miała wartość inną niż pusta lub 0 to if zwróci true


Gdyby to samo zrobić za pomocą $_GET to zadziała poprawnie oczywiście w formularzu nie pomyliłem method="post" z method="get"

Ten post edytował billy235 5.11.2007, 23:09:25
Go to the top of the page
+Quote Post
PawelC
post
Post #4





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Lepiej było by zrobić takie coś, że jeżeli $zmienna jest większa od 5 to wyświetli błąd a jeżeli mniejsza to ja zaakceptuje. Ja takie coś stosuje i jak narazie dobrze się sprawdza.
Go to the top of the page
+Quote Post
billy235
post
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 1
Dołączył: 2.10.2007

Ostrzeżenie: (0%)
-----


Cytat
Lepiej było by zrobić takie coś, że jeżeli $zmienna jest większa od 5 to wyświetli błąd a jeżeli mniejsza to ja zaakceptuje. Ja takie coś stosuje i jak narazie dobrze się sprawdza.



heee to tutaj w ogóle nie ma znaczenia ale i tak by było bez sensu bo ktoś może wysłać notę np -3333 i to też mi sporo psuje

Ten post edytował billy235 5.11.2007, 23:14:47
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 14:46