PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : datenübergabe an db


Highlandersepp
02.04.2006, 09:48
hi zusammen,

ich bin von wbb zu vb gewechselt und hab mit einer seite nen riesen problem. diese wird benutzt um daten ein zugeben, welche dann an die db geschickt werden.
eingabe erfolgt natürlich über tpl

nur die daten, welche eingegeben werden, kommen in der db nicht an.

habe die php soweit schon umgeschrieben, binde sie hier mal ein.......


<?php
define('STYLEID', 2);
define('THIS_SCRIPT', 'skiracing_tabellen_slalom_wengen_eingabe');


// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array('skiracing_tabellen_slalom_wengen_eingabe');

// pre-cache templates used by specific actions
$actiontemplates = array();

require_once('./global.php');




$si = 0;
$class = 1;
$tabellebit = "";

$swengen = $vbulletin->input->clean_array_gpc('p', array(
'swengen' => TYPE_ARRAY_NOHTML,
));

for($i = 0; $i < count($swengen); $i++) {


$db->query("UPDATE " . TABLE_PREFIX. "skiracing_punkte_slalom_aktuell SET swengen='$swengen[$i]' WHERE username='$username[$i]'AND swengen>'$swengen[$i]'");
$db->query("UPDATE " . TABLE_PREFIX. "skiracing_slalom_anmeldung SET swengen='$swengen[$i]' WHERE username='$username[$i]'AND swengen>'$swengen[$i]'");

}


$abfrage = $db->query_read("SELECT * FROM " . TABLE_PREFIX. "skiracing_slalom_anmeldung ORDER BY username ASC");
$ergebnis = $db->num_rows($abfrage);
while ($row = $db->fetch_array($abfrage)) {
if ($row['username']) $si++;
$username = $row['username'];
$swengen = $row['swengen'];


if ($class == 1) $tableclass = "tablea";
elseif ($class == 2) {
$class = 0;
$tableclass = "tableb";

$class++;

$usname = $vbulletin->userinfo['username'];
if($usname == $username){
eval ('$tabellebit .= "'.fetch_template('anzeigerang_abfahrt_woche').'";');
}
eval ('$tabellebit .= "'.fetch_template('skiracing_tabellen_slalom_wengen_eingabe_bit').'";');
}
$navbits = array(''=>'Ski Racing Slalom Wengen');

$navbits = construct_navbits($navbits);
eval('$navbar = "' . fetch_template('navbar') . '";');
eval ('print_output("'.fetch_template('skiracing_tabellen_slalom_wengen_eingabe') . '");');
?>


hab mit dem clean_array schon alles mögliche probiert, bekomme es nicht hin.

hier mal das eingabeteil aus der tpl

<form name="Datenedit" action="skiracing_tabellen_slalom_wengen_acp.php" method="post">
$tabellebit
<input type="hidden" name="eingabe" value="1"><center>
<input type="submit" value="Wengen Slalom
Punktetabellen wirklich speichern ?"></center>
</form>




wie gesagt, seite wird angezeigt, wenn ich daten eingeben und auf speichern klicke lädt sich die seite zwar neu, nur ankommen is nicht...........und fehlermeldung bekomme ich auch keine

Boothby
02.04.2006, 11:58
Hast du schon mal geprüft, was in den übergebenen Variablen überhaupt ankommt?

print_r ist manchmal ganz hilfreich. z.B. für $_REQUEST
echo "<pre>"; print_r($_REQUEST); echo "</pre>"; die();

Highlandersepp
02.04.2006, 12:15
Array
(
[s] =>
[styleid] => 0
[langid] => 0
[referrerid] => 0
[postid] => 0
[threadid] => 0
[forumid] => 0
[pollid] => 0
[a] =>
[mode] =>
[nojs] => 0
[pagenumber] => 0
)


das kommt bei raus und damit kann ich nix anfangen

Mystics
02.04.2006, 21:22
Wo soll denn dein $swengen herkommen? Im Template steht davon nichts.

Boothby
02.04.2006, 21:26
Du mußt das mit print_r natürlich in der richtigen Reihenfolge machen. Erst normal die Seite mit allen Formularen aufbauen lassen, dann die print_r-zeile in die php-datei einfügen, speichern und dann das Formular abschicken.

Alternativ kannst du auch die vBulletin-Eigene Funktion DEVDEBUG() verwenden. Dazu muß das Board im Debug-Mode sein.

DEVDEBUG("\$_REQUEST['was_weiß_ich'] = $_REQUEST[was_weiß_ich]");

Jetzt findest du am Ende der Seite (ganz unten) nen Dropdown ;).

Highlandersepp
05.04.2006, 13:11
sorry für die späte antwort, hatte keine zeit.

also,

$swengen ist ein tabellenfeld wo die daten eingetragen werden(heisst slalom wengen) sieht man auch in der bit

Highlandersepp
08.04.2006, 12:49
so, hab den richtigen platz nun gefunden und folgendes kommt bei raus: (halt ewig lang)
Array
(
[username] => Array
(
[0] => 1987
[1] => Alpino
[2] => andybraga
[3] => andycorr
[4] => aquila
[5] => Arni99
[6] => badhog
[7] => beatswiss
[8] => Benni_Raich
[9] => Burre
[10] => Butcher
[11] => ccn
[12] => cemor
[13] => Daniel91
[14] => dash
[15] => domeni
[16] => droissendorf
[17] => Garibaldi
[18] => Gerighausen
[19] => Giovanni
[20] => goalgetter05
[21] => GoldTiger
[22] => Grazziano
[23] => GreenRed
[24] => HCH
[25] => Highlandersepp
[26] => josef_schöttl
[27] => kapa89ITA
[28] => Karabau
[29] => kneidi
[30] => Lexxx
[31] => LuckyLuke
[32] => magiccastani
[33] => matthias25
[34] => Michi
[35] => neochristian
[36] => nicoch
[37] => Nistelberger
[38] => Polar Bear
[39] => rada
[40] => SchakalAut
[41] => Schröti
[42] => seeed
[43] => Sepp Speier
[44] => SOCMarcel
[45] => srdalxMI
[46] => Stefan792
[47] => Surfus
[48] => thomas007
[49] => vflb1848
[50] => viceman
[51] => VilPat
[52] => Wolf
[53] => wuppe
[54] => yeti
)

[swengen] => Array
(
[0] => 30
[1] => 31
[2] => 31
[3] => 31
[4] => 31
[5] => 31
[6] => 31
[7] => 31
[8] => 31
[9] => 31
[10] => 31
[11] => 31
[12] => 31
[13] => 31
[14] => 31
[15] => 31
[16] => 31
[17] => 31
[18] => 31
[19] => 31
[20] => 31
[21] => 31
[22] => 31
[23] => 31
[24] => 31
[25] => 31
[26] => 31
[27] => 31
[28] => 31
[29] => 31
[30] => 31
[31] => 31
[32] => 31
[33] => 31
[34] => 31
[35] => 31
[36] => 31
[37] => 31
[38] => 31
[39] => 31
[40] => 31
[41] => 31
[42] => 31
[43] => 31
[44] => 31
[45] => 31
[46] => 31
[47] => 31
[48] => 31
[49] => 31
[50] => 31
[51] => 31
[52] => 31
[53] => 31
[54] => 31
)

[eingabe] => 1
[s] =>
[styleid] => 0
[langid] => 0
[referrerid] => 0
[postid] => 0
[threadid] => 0
[forumid] => 0
[pollid] => 0
[a] =>
[mode] =>
[nojs] => 0
[pagenumber] => 0
)

oben steht mal die 30, die habe ich eingeben, wird aber nich an die db weitergeleitet