Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem ze znalezieniem rozwiązania.
goukan
post 16.05.2013, 15:36:27
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 25.03.2013

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


To mój kawałek kodu na sprawdzanie smsów:
  1. //Sprawdzacz kodu
  2. $handle = fopen("http://dotpay.pl/check_code.php?&check=".$check."&id=".$shop['id']."&code=".$offer[$offerId]['code']."&type=".$type."&del=".$del, 'r');
  3. $status = fgets($handle, 8);
  4. fclose($handle);
  5.  
  6. if(empty($check) or $server == "Brak")
  7. {
  8. echo'Wypełnij wszystkie pola';
  9. break;
  10. }
  11. elseif($status == 0 || preg_match('/[^0-9A-Za-z]/', $check) )
  12. {
  13. $message = "Nieprawidlowy kod.";
  14. }
  15. elseif($status == 1)
  16. {
  17. $message = '<img src="http://upload.wikimedia.org/wikipedia/commons/4/47/Done.png" style="max-width:100px; max-height:100px;"><br>
  18. Kod został wprowadzony poprawnie. '.$offer[$offerId]['item_name'].' zostało dodane na server '.$server.'.';
  19. if($czy_email=="tak") mail($email, 'Zakupiona usługa', $wiadomosc, $headers1);
  20. else echo '';
  21. mysql_query("update serwery set gold='1' where nazwa='$server'");
  22.  
  23. }
  24. else
  25. {
  26. $message = "Błąd w połączeniu z operatorem.";
  27. }
  28.  
  29. if(isset($message))
  30. {
  31. echo '<center>'.$message.'<br><a href="'.$current.$zn.'buy=item'.$offerId.'">Wróć do poprzedniej strony.</a></center>';
  32. $erno = 1;
  33. }


Na tym kodzie powyżej jest taki problem:
Wpisze poprawny kod, ale nie podam nazwy serwera. Pojawia sie komunikat \"uzupelnij wszystkie pola\" i to jest prawidlowo. Jednak ten kod nie powinien sie usuwac podczas tego komunikatu. Wpisuje jeszcze raz ten sam kod, ale tym razem wybieram nazwe serwera i pisze mi \"Kod nie poprawny\" Wyglada to tak jakby podczas wypisywania bledu o nie wpisanych polach, usuwalo kod który zostaje wpisany, a usluga nie zostaje spelniona. Napisałem do supportu i odpisali, że interfejs sprawdzający kody nie powinien znajdować się na samym poczatku sprawdzania kodu, bo to on już sam z siebie usuwa kody z obiegu, więc zrobiłem tak jak jest niżej

  1. //Sprawdzacz kodu
  2. if(empty($check) or $server == "Brak")
  3. {
  4. $message = "Wypełnij wszystkie pola";
  5. }
  6. $handle = fopen("http://dotpay.pl/check_code.php?&check=".$check."&id=".$shop['id']."&code=".$offer[$offerId]['code']."&type=".$type."&del=".$del, 'r');
  7. $status = fgets($handle, 8);
  8. fclose($handle);
  9. if($status == 0 || preg_match('/[^0-9A-Za-z]/', $check) )
  10. {
  11. $message = "Nieprawidlowy kod.";
  12. }
  13. elseif($status == 1)
  14. {
  15. $message = '<img src="http://upload.wikimedia.org/wikipedia/commons/4/47/Done.png" style="max-width:100px; max-height:100px;"><br>
  16. Kod został wprowadzony poprawnie. '.$offer[$offerId]['item_name'].' zostało dodane na server '.$server.'.';
  17. if($czy_email=="tak") mail($email, 'Zakupiona usługa', $wiadomosc, $headers1);
  18. else echo '';
  19. mysql_query("update serwery set gold='1' where nazwa='$server'");
  20.  
  21. }
  22. else
  23. {
  24. $message = "Błąd w połączeniu z operatorem.";
  25. }
  26.  
  27. if(isset($message))
  28. {
  29. echo '<center>'.$message.'<br><a href="'.$current.$zn.'buy=item'.$offerId.'">Wróć do poprzedniej strony.</a></center>';
  30. $erno = 1;
  31. }


Najpierw powinno sprawdzać czy są uzupełnione pola, jeśli nie to wypisuje błąd i skrypt nie powinen dalej się robić. Robiłem też z else, czyli, że jeśli pola są puste to wyświetl błąd, w przeciwnym wypadku i tu ten kawałek kodu z łączeniem z interfejsem. To niestety też nie działało. Macie pomysł jakby to można było zrobić?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 15:15