Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana pojedynczych rekordów w bazie MySQL wg szczególnego algorytmu
zbysiusp
post
Post #1





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 11.07.2009

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


Witam!

Bardzo proszę o pomoc w rozwiązaniu następującego problemu. Algorytm jak dla mnie jest skomplikowany dlatego przedstawię oczekiwany sposób działania skryptu PHP opisowo i na rycinie.

Etap 0: Pobieramy 3 ostatnie rekordy z bazy danych z polami: ID, windseed (ten etap uzyskałem)
Etap 1: Jeżeli w najnowszym rekordzie nr 1 wartość "windspeed=0" nic nie rób (koniec)
Etap 2: Jeżeli w najnowszym rekordzie nr 1 wartość "windspeed>0" np. 5, zbadaj wartość "windspeed" w rekordzie nr 2.
Etap 3: Jeżeli w rekordzie nr 2 wartość "windspeed>0" np. 3 nic nie rób (koniec)
Etap 4: Jeżeli w rekordzie nr 2 wartość "windspeed=0", zbadaj wartość "windspeed" w rekordzie nr 3.
Etap 5: Jeżeli w rekordzie nr 3 wartość "windspeed=0" nic nie rób (koniec)
Etap 6: Jeżeli w rekordzie nr 3 wartość "windspeed>0" np. 7, wylicz średnią "windspeed" z rekordu nr 1 (5) i nr 3 (7) i wpisz ją (update) w miejsce 0 w rekordzie nr 2 "windspeed=6"

Oczekiwany sposób działania skryptu PHP

Dziękuję za pochylenie się nad tematem i pozdrawiam
zbysiusp
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
zbysiusp
post
Post #2





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 11.07.2009

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


Cytat(maly_swd @ 13.02.2017, 11:06:38 ) *
No to pochwal się co już zrobiłeś (IMG:style_emoticons/default/smile.gif)

Przecież to parę ifów.


Problem rozwiązany. Algorytm działa jak należy. Mam 15 if-ów (IMG:style_emoticons/default/biggrin.gif)

Dziękuję za zainteresowanie.
Go to the top of the page
+Quote Post
Pyton_000
post
Post #3





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Cytat(zbysiusp @ 13.02.2017, 13:23:58 ) *
Problem rozwiązany. Algorytm działa jak należy. Mam 15 if-ów (IMG:style_emoticons/default/biggrin.gif)

Dziękuję za zainteresowanie.


15 IF-ów ? (IMG:style_emoticons/default/dostal.gif) (IMG:style_emoticons/default/worriedsmiley.gif) (IMG:style_emoticons/default/blink.gif)

Przecież wystarczy Ihmo tylko tyle:
  1. <?php
  2.  
  3. $sql = "SELECT * FROM `table` ORDER BY id DESC LIMIT 3";
  4. $stm = $this->src_db->prepare($sql);
  5. $stm->execute();
  6.  
  7. $records = $stm->fetchAll(PDO::FETCH_ASSOC);
  8.  
  9. if(count($records) === 3) {
  10. if($records[0]['windspeed'] > 0 && $records[1]['windspeed'] == 0 && $records[3]['windspeed'] > 0 ) {
  11. $records[2]['windspeed'] == ($records[0]['windspeed'] + $records[3]['windspeed']) / 2;
  12. }
  13. }


Ten post edytował Pyton_000 15.02.2017, 09:51:41
Go to the top of the page
+Quote Post

Posty w temacie


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: 16.10.2025 - 17:43