Generowany kod odrazu wpisany do pola typt text

0

Hej, mam takie coś że po wybranie paru opcji generuje mi się kod metodą post:

<?php 
echo '<font size="6" color="blue">'.'<b>'.@$_POST["typ_oslonki"].'</b>'.'</font>';
echo '<font size="6" color="blue">'.'<b>'.@$_POST["dod_typ_oslonki"] . "-".'</b>'.'</font>';
echo '<font size="6" color="blue">'.'<b>'.@$_POST["kolor"] . "-".'</b>'.'</font>';
echo '<font size="6" color="blue">'.'<b>'.@$_POST["kaliber"] . "-".'</b>'.'</font>';
echo '<font size="6" color="blue">'.'<b>'.@$_POST["pakowanie"];
echo '<font size="6" color="blue">'.'<b>'.@$_POST["dodatki"] . "-".'</b>'.'</font>';
echo '<font size="6" color="blue">'.'<b>'.@$_POST["metry"] . "-".'</b>'.'</font>';
echo '<font size="6" color="blue">'.'<b>'.@$_POST["gatunek"] . '<br/>'.'</b>'.'</font>';
@$p = $_POST["typ_oslonki"] . $_POST["dod_typ_oslonki"] . "-".$_POST["kolor"] . "-".$_POST["kaliber"] . "-". $_POST["pakowanie"].$_POST["dodatki"] . "-".$_POST["metry"] . "-".$_POST["gatunek"];, 

który chciałbym aby od razu po wyświetleniu wpisywał mi się do pola `<input type="text" name="Kod" />``

Pomożecie??

0
<input type="text" name="kod" value="hello, world!"/>

?

0

No dobra ale jaki kod wprowadzić zamiast tego Hello World. Bo opcji po wyborze jest 1400, no i nie wiem...

0

Nie wiem - spróbuj opisać swój problem raz jeszcze, ponieważ niestety z Twojego opisu mało co da się wyłuskać.

0

Wysłalem zdjecie, widzisz ten niebieski kod, jest ich około 1400, wyżej są listy rozwijalne, wybieram sobie opcje i wyświetla mi się kodzik. Chce aby ten kod znalazł się w pozycji tu wpisz kod, Od razu po naciśnieciu przycisku generowania kodu

0

No to możesz zrobić:

document.getElementById('costam').value = 'hello, world!';
0

nie rozumiem

0

Chodzi o to, że samym JS'em załatwisz sprawę.

Kod, który generujesz przekazuj zarówno w miejsce wyświetlanego kodu jak i w miejsce formularza.

0

No ok, ale to 'cośtam' to co ma być?? i dlaczego value to 'Hello World!'? Ten kod generuje pobierając informacje z bazy danych.

0
Nadziany Pomidor napisał(a):

No ok, ale to 'cośtam' to co ma być?? i dlaczego value to 'Hello World!'? Ten kod generuje pobierając informacje z bazy danych.

To magiczne 'costam' to ID twojego pola tekstowego. Przykładowo:

Masz pole tekstowe:
<input type="text" id="costam" />

I teraz w JS dostęp do jego wartości masz poprzez linijkę:
document.getElementById("costam").value = 'Hello World';

Po wykonaniu tej linijki w JS w polu input pojawi się Hello World (oczywiście Hello World ustawiasz sobie na to co chcesz, przykładowo Twój kod).

0

<input type="text" name="Kod" id="costam" document.getElementById("costam").value = 'Hello World' />

Mam takie coś ale mi nawet Helo world nie wyskakuje, a ja chce że użtykownik po wciśnięciu przycisku "Wyświetl kod produktu" po tym wyświetlił mi się kod i automatycznie wpisał do formularza.

0
Nadziany Pomidor napisał(a):

<input type="text" name="Kod" id="costam" document.getElementById("costam").value = 'Hello World' />

Mam takie coś ale mi nawet Helo world nie wyskakuje, a ja chce że użtykownik po wciśnięciu przycisku "Wyświetl kod produktu" po tym wyświetlił mi się kod i automatycznie wpisał do formularza.

W jaki sposób generujesz ten kod produktu, dynamicznie czy przez przeładowanie strony? Może pokaż cały ten kod tej strony.

0

TAK to wygląda, wiem że jest 8krotne to samo zapuytanie do bazy ale ghdy próbowałem to zminimalizować to nie działało tak jak powinno

WYBIERZ PRODUKT, KTÓRY CIĘ INTERESUJE

Wybierz typ osłonki:

<?php include('oslonki.php'); ?>
<?php $typ_oslonki = $mysqli->query('SELECT * FROM oslonki WHERE typ_oslonki!="null" ORDER BY typ_oslonki'); echo '<select name="typ_oslonki">'; while($row1 = mysqli_fetch_row($typ_oslonki)) { echo '<option value="'.$row1[1].'">'.$row1[1].$row1[2].'</option>'; } echo '</select>'; ?>

Wybierz dodatek do typu osłonki:

<?php //echo "Dodatki do typów osłonki:" . '
'; $dod_typ_oslonki = $mysqli->query('SELECT * FROM oslonki WHERE dod_typ_oslonki!="null" ORDER BY dod_typ_oslonki'); echo '<select name="dod_typ_oslonki">'; while($row3 = mysqli_fetch_row($dod_typ_oslonki)) { echo '<option value="'.$row3[3].'">'.$row3[3].$row3[4].'</option>'; } echo '</select>' ; ?>

Wybierz kolor osłonki:

<?php $kolor = $mysqli->query('SELECT * FROM oslonki WHERE kolor!="null" ORDER BY kolor'); echo '<select name="kolor">'; while($row5 = mysqli_fetch_row($kolor)) { echo '<option value="'.$row5[5].'">'.$row5[5].$row5[6].'</option>'; } echo '</select>' ; ?>

Wybierz kaliber osłonki:

<?php $kaliber = $mysqli->query('SELECT * FROM oslonki WHERE kaliber!="null" ORDER BY kaliber'); echo '<select name="kaliber">'; while($row7= mysqli_fetch_row($kaliber)) { echo '<option value="'.$row7[7].'">'.intval($row7[7]).'</option>'; } echo '</select>' ; ?>

Wybierz rodzaj pakowania osłonki:

<?php $pakowanie = $mysqli->query('SELECT * FROM oslonki WHERE pakowanie!="null"'); echo '<select name="pakowanie">'; while($row8 = mysqli_fetch_row($pakowanie)) { echo '<option value="'.$row8[8].'">'.$row8[8].$row8[9].'</option>'; } echo '</select>' ; ?>

Wybierz dodatek do osłonki:

<?php $dodatki = $mysqli->query('SELECT * FROM oslonki WHERE dodatki!="null"'); echo '<select name="dodatki">'; while($row10 = mysqli_fetch_row($dodatki)) { echo '<option value="'.$row10[10].'">'.$row10[10].$row10[11].'</option>'; } echo '</select>' ; ?>

Wybierz ilość m.b. osłonki:

<?php $metry = $mysqli->query('SELECT * FROM oslonki WHERE metry!="null" ORDER BY metry'); echo '<select name="metry">'; while($row12 = mysqli_fetch_row($metry)) { echo '<option value="'.$row12[12].'">'.intval($row12[12]).$row12[13].'</option>'; } echo '</select>' ; ?>

Wybierz gatunek osłonki:

<?php $gatunek = $mysqli->query('SELECT * FROM oslonki WHERE gatunek!="null"'); echo '<select name="gatunek">'; while($row14 = mysqli_fetch_row($gatunek)) { echo '<option value="'.$row14[14].'">'.$row14[14].$row14[15].'</option>'; } echo '</select>' ; ?>

<input type="submit" class="button" value="Wyświetl kod wybranego produktu:">

<?php //wyprowadzenie kodu listy rozwijalnej na ekran echo '<font size="6" color="blue">'.''.@$_POST["typ_oslonki"].''.'</font>'; echo '<font size="6" color="blue">'.''.@$_POST["dod_typ_oslonki"] . "-".''.'</font>'; echo '<font size="6" color="blue">'.''.@$_POST["kolor"] . "-".''.'</font>'; echo '<font size="6" color="blue">'.''.@$_POST["kaliber"] . "-".''.'</font>'; echo '<font size="6" color="blue">'.''.@$_POST["pakowanie"]; echo '<font size="6" color="blue">'.''.@$_POST["dodatki"] . "-".''.'</font>'; echo '<font size="6" color="blue">'.''.@$_POST["metry"] . "-".''.'</font>'; echo '<font size="6" color="blue">'.''.@$_POST["gatunek"] . '
'.'
'.'</font>'; @$p = $_POST["typ_oslonki"] . $_POST["dod_typ_oslonki"] . "-".$_POST["kolor"] . "-".$_POST["kaliber"] . "-". $_POST["pakowanie"].$_POST["dodatki"] . "-".$_POST["metry"] . "-".$_POST["gatunek"]; //wyświetlanie odpowiedniego zdjecia w zależności od wyboru użytkownika $pathToImg = 'role/'; $b = $mysqli->query('SELECT zdjecie FROM zdjecia WHERE kod = "'.@$_POST["kolor"].'" AND kodR = "'.@$_POST["pakowanie"].'"'); $c = $b->num_rows; if ($c > 0) { while ($row = $b->fetch_assoc()) { echo ''.$pathToImg.$row['zdjecie'].''; } } ?>
<?php //porównanie kodu z wyboru list rozwijalnych a kodów z bazy danych $z = $mysqli->query('SELECT * FROM katalogg WHERE pozycja = "'.$p.'"'); $x = $z->num_rows; if ($x) { echo '<font size="6" color="green">'.''."Skontaktuj się z działem sprzedaży".''.'</font>'; }else{ echo '<font size="6" color="red">'.''."Skontaktuj się z działem technologi".''.'</font>'; }

?>

0

Jeżeli pod zmienną:

@$p = $_POST["typ_oslonki"] . $_POST["dod_typ_oslonki"] . "-".$_POST["kolor"] . "-".$_POST["kaliber"] . "-". $_POST["pakowanie"].$_POST["dodatki"] . "-".$_POST["metry"] . "-".$_POST["gatunek"];

kryje się cały kod, który chcesz umieścić w swoim polu to wystarczy, że go tam wstawisz na poziomie tworzenia strony. Czyli:

<input type="text" name="Kod" value="&lt;?php echo @$p; ?">" />

Po drugie - optymalizacja zapytań do bazy to tutaj najmniejszy problem, te @ przed POST'ami to tragedia.

0

Kolego dziękuję udało się i działa. Te @ są po to bo dopóki na wcisne przycisku wyświetl kod, to mi wywala takie ostrzeżenie od metody post.

0

No właśnie, staraj się od początku rozwiązywać takie problemy. Jeżeli chcesz zostać przy programowaniu na dłużej to zaczynasz od złych nawyków.

0
Nadziany Pomidor napisał(a):

Kolego dziękuję udało się i działa. Te @ są po to bo dopóki na wcisne przycisku wyświetl kod, to mi wywala takie ostrzeżenie od metody post.

Poczytaj o funkcji isset, lub dla php > 7.0 operator null coalesce jest też fajnym rozwiązaniem, wtedy błąd o którym mówisz zniknie. Nigdy nie powinieneś używać @.

Dodatkowo zainteresuj się co robić podczas używania get I post bo tworzą się ogromne dziury w bezpieczeństwie aplikacji, nie escape'ując znaków etc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1