Directe reactie in code bij invullen van input field?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET Developer / Innovatieve software / Virtual Re

Functieomschrijving Als .Net developer werken aan innovatieve software waar onder andere gebruik gemaakt wordt van Virtual Reality? Bijdragen aan een organisatie waar je uitgedaagd wordt om continu verbeteringen en ontwikkelpunten te ontdekken en door te voeren? Werken in de omgeving Putten? Reageer dan nu voor meer informatie! Het pro-actief aandragen van verbeteringen voor de bestaande applicatie; Ontwikkelen van nieuwe functionaliteiten; Doorvoeren van aanpassingen en wijzigingen; Verantwoordelijk voor koppelingen met andere systemen; Op de hoogte blijven van technische ontwikkelingen. Functie-eisen Hbo werk- en denkniveau; Een afgeronde IT gerelateerde opleiding; Minimaal 1 jaar professionele ervaring als developer; Aantoonbare kennis van C#; Initiatiefrijke

Bekijk vacature »

Pagina: « vorige 1 2

Thomas van den Heuvel

Thomas van den Heuvel

15/11/2019 17:01:37
Quote Anchor link
Ik denk dat @Pascal tabellen bedoelt, en niet databases (waarom wordt dit altijd door elkaar gehaald?).

Deze zoekvelden zou ik in een aparte tabel verwachten, die via een tussenliggende (koppel)tabel verbonden wordt aan de informatie waar deze (zoek?)gegevens betrekking op hebben.

Maar betroffen dit wel "zoek"gegevens? Het ging in de initiële posts immers om searchDivs? Of was dit alles een (poging tot een) generieke manier om allerhande informatie als een soort kapstok op te hangen aan een of andere entiteit?

Andere vraag: waarvoor ben je dit concreet aan het gebruiken, en wat wil je er mee kunnen doen?

Misschien vereist dit wel een andere aanpak.

Je bent ons nu continu aan het vragen wat je moet bouwen, en hoe je het moet bouwen, zonder ons precies uit te leggen wat je nu precies wilt bouwen en waar je dit vervolgens voor wilt gebruiken. Laten we eens bij het begin beginnen.
 
PHP hulp

PHP hulp

29/01/2020 02:08:27
 
Pascal Schuffelers

Pascal Schuffelers

15/11/2019 17:14:49
Quote Anchor link
@- Ariën - Ik bedoel inderdaad tabellen en ja ik weet wat beide betekend alleen tijdens typen kijk ik helaas niet of ik tabel of database vermeld, wat voor jullie inderdaad verwarrend is dan.

@Thomas, die searchDivs , ik heb gewoon iets genomen, ja ik moet nog aan mijn benamingen werken.

Nou ik kan zo op het forum niet precies tonen wat ik wil bereiken omdat het bedrijfsgegevens zijn.
Echter privé zou ik wel een voorbeeld kunnen doorsturen.
Wellicht zal het dan stukken makkelijker te begrijpen zijn wat de bedoeling is en zal het ook wel niks voorstellen.

Grofweg zouden bv 32 regels onder elkaar staan welke testen getest moet worden met daarachter een kolom met invul velden.

Boven aan de pagina keuze hoeveel kolommen (aantal samples) je wilt invullen tot max. 25 kolommen.
 
- Ariën -
Beheerder

- Ariën -

15/11/2019 17:58:34
Quote Anchor link
Het hoeft niet precies, je kan ook in grove lijnen vertellen wat je wilt bereiken.
 
Pascal Schuffelers

Pascal Schuffelers

16/11/2019 18:02:24
Quote Anchor link
Het zou er zo uit moeten zien.
eerste kolom links waar niks staat (heb het bewerkt) staat wat getest moet worden, label velden.
2de kolom zijn tot onder in het formulier, invul velden.
Deze invul velden zijn per kolom voor iedere sample dat getest moet worden.
dus heb ik 2 samples, zijn het dus 2 volledige kolommen tot onder, heb ik 13 samples dan ook 13 kolommen tot onder. tot max 25.

Hopelijk te begrijpen aan de hand van het voorbeeld foto.

https://i.ibb.co/M1RZfqT/Voorbeeld-lijst.png
Gewijzigd op 16/11/2019 18:02:59 door Pascal Schuffelers
 
Thomas van den Heuvel

Thomas van den Heuvel

16/11/2019 22:00:33
Quote Anchor link
Maar daarmee ligt toch al vast uit hoeveel rijen zo'n kolom bestaat? En wat je van zo'n sample test/meet is toch niet elke keer verschillend, dat lijkt mij veelste vrijblijvend? En als dit per sample(type) vastligt kun je dan niet beter een soort van batch maken waarin die rijen als een soort van test-template worden opgeslagen? En dat je dan kunt zeggen "voer test-batch X uit op sample Y en Z" en dan wordt de hele bijbehorende tabel automatisch gegenereerd?
 
Pascal Schuffelers

Pascal Schuffelers

18/11/2019 09:34:17
Quote Anchor link
De rijen staan vast, 94 verschillende testen, echter de kolommen staan niet vast, ligt net eraan hoeveel samples ze moeten testen.
 
Thomas van den Heuvel

Thomas van den Heuvel

18/11/2019 15:55:28
Quote Anchor link
Dan zou je dit sowieso per sample willen behandelen lijkt mij? En mogelijk heeft deze sample zelf ook informatie? Zoals een datum/interne benaming/afnemer van metingen et cetera? Dit klinkt als een aparte entiteit. Of doe je dit in bulk? Wordt dat niet heel snel heel onoverzichtelijk als je 94 tests van meerdere samples af moet nemen? Hoe ga je hier doorheen als je bijvoorbeeld 3 samples hebt? Doe je dan eerst meting #1 voor sample #1, #2 en #3 en dan zo verder voor meting #2, #3 et cetera? Of werk je eerst één sample af?

Als het zaak is dat op alle samples alle testen worden afgenomen zou ik eerder een stuk functionaliteit verwachten voor het toevoegen van een complete kolom (per sample). Maar dat gaat anders in zijn werk dan simpelweg inputvelden toevoegen met hier een div-wrapper omheen denk ik. Als je de tabel een kwartslag draait (sample op een regel, testen in de kolommen) dan zou je je wel kunnen bedienen van het toevoegen van een volledige rij. Maar allebei is in principe mogelijk met jQuery.
 
Pascal Schuffelers

Pascal Schuffelers

14/01/2020 16:58:37
Quote Anchor link
Hallo mensen,

Ik kom toch weer terug, pagina klaar en werkend maar geheel niet naar wens, dus zou graag opnieuw willen beginnen, met info wat jullie hadden gegeven.
Echter heb ik even een vraag.

Met onderstaande voorbeeld code voeg ik bij drukken op submit een rij erbij.:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<!DOCTYPE html>

<html>

<head>
  <title>Hello!</title>
 <script src="https://code.jquery.com/jquery-3.2.1.js"></script>
 <script>
$(document).ready(function() {
    var i = 1;
    $("#add_row").click(function() {
    $('tr').find('input').prop('disabled',true)
        $('#addr' + i).html("<td>" + (i + 1) + "</td><td><input type='text' name='uid" + i + "'  placeholder='User ID' class='form-control input-md'/></td><td><input type='text' name='uname" + i + "' placeholder='Name' class='form-control input-md'/></td><td><input type='text' name='nic" + i + "' placeholder='NIC' class='form-control input-md'/></td><td><input type='text' name='amount" + i + "' placeholder='Amount' class='form-control input-md'/></td><td><input type='date' name='dt" + i + "' placeholder='Date' class='form-control input-md'/></td>");

        $('#tab_logic').append('<tr id="addr' + (i + 1) + '"></tr>');
        i++;
    });
});
</script>

</head>

<body>



<div class="text-center">
  <h1>TEST PAGE</h1>
</div>
<hr>

<div class="container">
  <div class="row clearfix">
    <div class="col-md-12 column">
      <table class="table table-bordered table-hover" id="tab_logic">
        <thead>
          <tr>
            <th class="text-center">
              #
            </th>
            <th class="text-center">
              Test ID
            </th>
            <th class="text-center">
              Test
            </th>
            <th class="text-center">
              Test1
            </th>
            <th class="text-center">
              Test2
            </th>
            <th class="text-center">
              Test3
            </th>
          </tr>
        </thead>
        <tbody>
          <tr id='addr0'>
            <td>
              1
            </td>
            <td>
              <input type="text" name='uid' placeholder='Test ID' class="form-control" />
            </td>
            <td>
              <input type="text" name='uname' placeholder='Test' class="form-control" />
            </td>
            <td>
              <input type="text" name='nic' placeholder='Test1' class="form-control" />
            </td>
            <td>
              <input type="text" name='amount' placeholder='Test2' class="form-control" />
            </td>
            <td>
              <input type="date" name='dt' placeholder='Test3' class="form-control" />
            </td>
          </tr>
          <tr id='addr1'></tr>
        </tbody>
      </table>
    </div>
  </div>
  <button id="add_row" class="btn btn-primary btn-lg pull-left">SUBMIT</button>
</div>

</body>
</html>


Maar ik wil het omgekeerd hebben.
Bv ik start met het woord test met erachter 1 cell.
Eronder staat een knop toevoegen.
Ik druk op die knop en er komt naast de bestaande tekst en cell een nieuwe tekst met cell , kan mij iemand op weg helpen met een voorbeeldje?
 
- Ariën -
Beheerder

- Ariën -

14/01/2020 17:25:55
Quote Anchor link
Dat is toch bijna het zelfde? Alleen een aangepaste HTML-code in je jQuery-script.
 
Pascal Schuffelers

Pascal Schuffelers

15/01/2020 11:18:59
Quote Anchor link
Klopt, maar daarom vraag ik een zetje , iemand die mij op weg wil helpen met een klein voorbeeld.
Ik wil ook laten zien dat ik het probeer, echter hier kom ik op een of andere manier niet mee uit de voeten helaas.
 
Pascal Schuffelers

Pascal Schuffelers

21/01/2020 11:06:35
Quote Anchor link
Zie dat niemand mij helaas op weg kan helpen.
Wat ik ook op dit moment heb , is dat alles wat in cellen ingevuld word, maar tot de helft word opgeslagen via Mysqli in de tabel.
Heb dit via PDO ook eens getest echter die doet hetzelfde.
Maar het rare is , vul ik in de regel gewoon getallen in dat dit wel gebeurd, maar krijg ook geen fout.
 
- Ariën -
Beheerder

- Ariën -

21/01/2020 11:28:00
Quote Anchor link
Als maar de helft wordt opgeslagen, dan ligt het niet aan de database-functies (MySQLi of PDO) maar aan je code.

Is je name in de extra toegevoegde velden wel uniek? Anders wordt deze in de POST-request steeds overschreven.

Om meer duidelijkheid te hebben kan je de $_POST-global door print_r halen.
 
Pascal Schuffelers

Pascal Schuffelers

21/01/2020 11:47:25
Quote Anchor link
Ja is allemaal uniek, echter als ik print_r gebruik om te testen komt hij ook niet verder als die 32 global, net als MySQLi of PDO.
 
- Ariën -
Beheerder

- Ariën -

21/01/2020 12:03:46
Quote Anchor link
Bedoel je dat er velden missen?
32 is nog maar peanuts. Maximaal is dit begrensd op 1000 velden. Maar als je dat bereikt dan is er wat mis aan je structuur ;-)
Gewijzigd op 21/01/2020 12:05:06 door - Ariën -
 
Pascal Schuffelers

Pascal Schuffelers

21/01/2020 12:57:37
Quote Anchor link
Ik heb hieronder alles in print_r gezet en tot en met print_r($Charpy2impact1) toont hij alles , daarna niets meer.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
print_r($MaterialCode1);
                    print_r($BatchCode1);
                    print_r($OrderCode1);
                    print_r($BatchNrSAPrelease1);
                    print_r($DensityforSAPrelease1);
                    print_r($AshcontentforSAPrelease1);
                    print_r($datum1);
                    print_r($datuma1);
                    print_r($Palletbox1);
                    print_r($datumb1);
                    print_r($Nrofplaques1);
                    print_r($datumc1);
                    print_r($Nrofbars1);
                    print_r($datumd1);
                    print_r($DensityAverageformule1);
                    print_r($Densitya1);
                    print_r($Densityb1);
                    print_r($Densityc1);
                    print_r($Densitystdformule1);
                    print_r($MFR1);
                    print_r($MVR1);
                    print_r($Meltdensityformule1);
                    print_r($Ashcontent1);
                    print_r($NoAging1);
                    print_r($moldeddatum1);
                    print_r($Breaktype1);
                    print_r($HammerType1);
                    print_r($Charpyimpact1);
                    print_r($Charpyimpactsd1);
                    print_r($CharpyimpactRemarks1);
                    print_r($molded1datum1);
                    print_r($Break1type1);
                    print_r($Hammer1Type1);
                    print_r($Charpy1impact1);
                    print_r($Charpy1impactsd1);
                    print_r($Charpy1impactRemarks1);
                    print_r($molded2datum1);
                    print_r($Break2type1);
                    print_r($Hammer2Type1);
                    print_r($Charpy2impact1);
                    print_r($Charpy2impactsd1);
                    print_r($Charpy2impactRemarks1);
                    print_r($Izodmolded1datum1);
                    print_r($Break3type1);
                    print_r($Hammer3Type1);
                    print_r($Charpy3impact1);
                    print_r($Charpy3impactRemarks1);
                    print_r($Izodmolded2datum1);
                    print_r($Break4type1);
                    print_r($Hammer4Type1);
                    print_r($Charpy4impact1);
                    print_r($Charpy4impactsd1);
                    print_r($Charpy4impactRemarks1);
                    print_r($Tensiledatum1);
                    print_r($EModulus1);
                    print_r($EModulussd1);
                    print_r($Tensile1);
                    print_r($Tensilesd1);
                    print_r($Tensileyield1);
                    print_r($Tensileyieldsd1);
                    print_r($Tensilestress1);
                    print_r($Tensilestresssd1);
                    print_r($Tensilestrength1);
                    print_r($Tensilestrengthsd1);
                    print_r($YieldStress1);
                    print_r($YieldStresssd1);
                    print_r($TensileRemarks1);
                    print_r($Flexuraldatum1);
                    print_r($Mpa1);
                    print_r($Mpasd1);
                    print_r($Mpastrength1);
                    print_r($Mpastrengthsd1);
                    print_r($MpaRemarks1);
                    print_r($L1);
                    print_r($a1);
                    print_r($b1);
                    print_r($Lp1);
                    print_r($Ap1);
                    print_r($bp1);
                    print_r($Volatiles1);
                    print_r($VolatilesRemarks1);
                    print_r($Weightaverage1);
                    print_r($Weightsd1);
                    print_r($BulkDensity1);
                    print_r($Remarks1);


Zo sla ik hem dan op.:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
  $pdo = Database::connect();
                    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                    $sql = "INSERT INTO PPSF0803AD1A (MaterialCode1,BatchCode1,OrderCode1,BatchNrSAPrelease1,DensityforSAPrelease1,AshcontentforSAPrelease1,datum1,datuma1,Palletbox1,datumb1,Nrofplaques1,datumc1,Nrofbars1,datumd1,DensityAverageformule1,Densitya1,Densityb1,Densityc1,Densitystdformule1,MFR1,MVR1,Meltdensityformule1,Ashcontent1,NoAging1,moldeddatum1,Breaktype1,HammerType1,Charpyimpact1,Charpyimpactsd1,CharpyimpactRemarks1,molded1datum1,Break1type1,Hammer1Type1,Charpy1impact1,
                                        Charpy1impactsd1,Charpy1impactRemarks1,molded2datum1,Break2type1,Hammer2Type1,Charpy2impact1,Charpy2impactsd1,Charpy2impactRemarks1,Izodmolded1datum1,Break3type1,Hammer3Type1,Charpy3impact1,Charpy3impactRemarks1,Izodmolded2datum1,Break4type1,Hammer4Type1,Charpy4impact1,Charpy4impactsd1,Charpy4impactRemarks1,Tensiledatum1,EModulus1,EModulussd1,Tensile1,Tensilesd1,Tensileyield1,Tensileyieldsd1,Tensilestress1,Tensilestresssd1,Tensilestrength1,Tensilestrengthsd1,YieldStress1,
                                        YieldStresssd1,TensileRemarks1,Flexuraldatum1,Mpa1,Mpasd1,Mpastrength1,Mpastrengthsd1,MpaRemarks1,L1,a1,b1,Lp1,Ap1,bp1,Volatiles1,VolatilesRemarks1,Weightaverage1,Weightsd1,BulkDensity1,Remarks1) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
                    $q = $pdo->prepare($sql);
                    $q->execute(array($MaterialCode1,$BatchCode1,$OrderCode1,$BatchNrSAPrelease1,$DensityforSAPrelease1,$AshcontentforSAPrelease1,$datum1,$datuma1,$Palletbox1,$datumb1,$Nrofplaques1,$datumc1,$Nrofbars1,$datumd1,$DensityAverageformule1,$Densitya1,$Densityb1,$Densityc1,$Densitystdformule1,$MFR1,$MVR1,$Meltdensityformule1,$Ashcontent1,$NoAging1,$moldeddatum1,$Breaktype1,$HammerType1,$Charpyimpact1,$Charpyimpactsd1,$CharpyimpactRemarks1,$molded1datum1,$Break1type1,$Hammer1Type1,$Charpy1impact1,$Charpy1impactsd1,$Charpy1impactRemarks1,$molded2datum1,$Break2type1,$Hammer2Type1,$Charpy2impact1,$Charpy2impactsd1,$Charpy2impactRemarks1,$Izodmolded1datum1,$Break3type1,$Hammer3Type1,$Charpy3impact1,$Charpy3impactRemarks1,$Izodmolded2datum1,$Break4type1,$Hammer4Type1,$Charpy4impact1,$Charpy4impactsd1,$Charpy4impactRemarks1,$Tensiledatum1,$EModulus1,$EModulussd1,$Tensile1,$Tensilesd1,$Tensileyield1,$Tensileyieldsd1,$Tensilestress1,$Tensilestresssd1,$Tensilestrength1,$Tensilestrengthsd1,$YieldStress1,$YieldStresssd1,$TensileRemarks1,$Flexuraldatum1,$Mpa1,$Mpasd1,$Mpastrength1,$Mpastrengthsd1,$MpaRemarks1,$L1,$a1,$b1,$Lp1,$Ap1,$bp1,$Volatiles1,$VolatilesRemarks1,$Weightaverage1,$Weightsd1,$BulkDensity1,$Remarks1));
Gewijzigd op 21/01/2020 13:01:43 door Pascal Schuffelers
 
- Ariën -
Beheerder

- Ariën -

21/01/2020 13:08:50
Quote Anchor link
Wow, ga alles door print_r() halen :P?
het gaat enkel om je $_POST.

Verder ziet je database er niet genormaliseerd uit? Ik durf te wedden dat je beter eraan toe bent om te verdiepen in databasenormalisatie. Dan kan je jouw structuur beter opdelen in diverse tabellen die elk een eigen entiteit opslaan, of data koppelen (koppeltabellen).

Ik heb geen idee wat de velden nu voorstellen, maar als dit de status is van diverse minigames in RPG-game, dan kan je de games al apart opslaan, en ook de statussen. En met koppeltabellen kan je dan koppelingen leggen. De bedoeling van Databasenormalisatie is dat je verticaal werkt om dit uit te breiden, en niet horizontaal in de rijen. Als je op internet er wet over leest moet het geheel en de vormen van databasenormalisatie wel duidelijker worden.

Ik zou zeggen: Terug naar de tekentafel voor wat betreft je databasemodel.
Gewijzigd op 21/01/2020 13:10:49 door - Ariën -
 
Pascal Schuffelers

Pascal Schuffelers

21/01/2020 16:01:47
Quote Anchor link
Klopt wat je zegt, echter verklaard het nog niet waarom hij niet de overige gegevens opslaat, maar ook geen fout geeft.
Vul ik een getal zo in op de plek wat hij niet opslaat , dan doet hij dat wel.
 
- Ariën -
Beheerder

- Ariën -

21/01/2020 16:04:09
Quote Anchor link
Ik zou eens debuggen, en kijken wat er in je $_POST array staat, en wat je uiteindelijk aan query INSERT.
Maar het is beter om zo snel mogelijk de boel op de schop te gooien.
 
Thomas van den Heuvel

Thomas van den Heuvel

21/01/2020 18:02:09
Quote Anchor link
Is het de bedoeling dat er meerdere records tegelijkertijd worden weggeschreven?
Heb je gekeken wat de inhoud is van $_POST?
Heb je gekeken hoe $sql er uitziet?
Heb je geprobeerd deze query rechtstreeks naar de database weg te schrijven?
Je gebruikt PDO::ERRMODE_EXCEPTION maar ik zie nergens een try-catch blok?
Een niet gevangen Exception levert altijd een Fatal Error op, heb je al gekeken in je errorlogs?
Je zou deze ook op je scherm kunnen weergeven. Tijdens ontwikkeling zou je altijd in een soort van debug-modus moeten werken zodat dit soort fouten direct aan het licht komen. Zet de volgende passage aan begin van al je PHP-bestanden, of maak hier een include van (debug.php oid):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
error_reporting(E_ALL);
ini_set('display_startup_errors', true);
ini_set('display_errors, 'stdout');
?>
 
Pascal Schuffelers

Pascal Schuffelers

22/01/2020 16:41:11
Quote Anchor link
Ik heb alles al geprobeerd, maar blijft hetzelfde als resultaat leiden.
Heb alles opzij geschoven en een andere gang in geslagen met schrijven om te kijken wat hij daar op doet.
 

Pagina: « vorige 1 2



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.