Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Vetovalikosta tallennus

Hutsi [15.01.2011 13:30:59]

#

Hei, ongelmana on tiedon tallennus vetovalikosta takaisin tietokantaan. Eli haen tietokannasta taulusta x etunimen ja sukunimen vetovalikkoon, josta saa valita oikean henkilön sekä muihin tekstikenttiin voi kirjoittaa tarpeellista tietoa ja nämä tallennetaan takaisin tietokantaan tauluun y.

Ongelma on siinä, kun tallennan tiedot, niin nimestä tallentuu vain etunimi tietokantaan, sukunimi häviää jonnekin. Ongelmana tuntuu olevan tuo väli etu- ja sukunimessä, yhteen laitettuna tai tekstikenttään kirjoittamalla koko nimi tallentuu oikein. (nimi haetaan etunimi, sukunimi ja tallennetaan kokonimi) Osaisitteko auttaa tuossa ongelmassa?

Lebe80 [15.01.2011 14:07:35]

#

Varmaan ongelma on siinä sun tietokantahaussa, jossa päivität tietoja. Näin näkemättä minkäänlaista koodia, ja/tai taulujen muotoa, on aika arvailutasolla auttaminen.

Metabolix [15.01.2011 14:22:38]

#

Kristallipallo kertoo, että skriptisi tuottaa tällaisia vaihtoehtoja:

<option value=Pekka Puupää>Pekka Puupää</option>

Jos näin on, ongelma ratkeaa lainausmerkeillä arvon ympärillä:

<option value="Pekka Puupää">Pekka Puupää</option>

Hutsi [15.01.2011 16:06:34]

#

Kiitos Metabolixille, kristallopallosi oli melkein oikeassa, 'hipsut' puuttuivat ja asia korjaantui sillä. Tässä koodi vielä selvennykseksi

<?php

include "yhteys.php";

$kysely3 = "SELECT DISTINCT etunimi, sukunimi FROM oppilas WHERE kurssi='$kurssi'";

$haku3 = mysql_query($kysely3);

//luetaan php-taulukkoon
while ($rivi = mysql_fetch_array($haku3))
{
foreach($rivi as $oppilas)
	$etunimi = $rivi['etunimi'];
	$sukunimi = $rivi['sukunimi'];
	$rivi = "$etunimi $sukunimi";

	echo "<option value='$rivi'>$rivi";
}
echo "<option value='Valitse' selected='selected'>Valitse";
echo "</option></select><br/><br/>";
?>

Metabolix [15.01.2011 16:10:16]

#

Koodisi foreach-rivi on turha, ja on oikeastaan vain hyvää tuuria, että siitä ei ole aiheutunut syntaksivirhettä tai bugia koodin toimintaan. (Ennen kuin poistat sen, mieti tarkkaan, mitä se edes tekee.)

Hutsi [15.01.2011 16:34:09]

#

Tuota foreach-riviä ei alunperin ollut tuossa (poistan sen tarpeettomana, toimii loistavasti ilman), mutta kun en saanut tuota toimimaan oikein kokeilin sitä erään ohjeen mukaan, kun tuo etunimi sukunimi muuttuu kokonimeksi. Ja olisihan se pitänyt hoksata/huomata, että ne hipsut pitää olla myös tuolla option value määrittelyssä, kun myslissä pitää olla hisut varsinkin jos on välilyöntejä. Tälläisen itseopiskelijan kun pitää oppia erehdysten ja onnistumisten kautta :) Kiitos pikaisista vastauksista.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta