CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
02.12.2004, 09:52:23
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
UPDATE wird nciht durchgeführt
Hallo Forum,
ich habe folgendes Problem:
Wenn ich Daten ins Formular eingebe und auf senden klicke erscheint im Browserfenster folgender Fehler:
Warning: Missing argument 8 for put_indb() in /home/www/web817/html/test.php on line 14
Inhalt von Line 14:
PHP-Code:
function put_indb( $id_nr, $id_nr, $h_pkt, $g_pkt, $h_sp, $g_sp, $h_sae, $g_sae)
Hier der Quellcode der gesamten Datei
PHP-Code:
<?php
//Datenbankconnect
$dbname="usr_web817_1";
include("/home/www/web817/files/include.inc.php");
$dbh = mysql_connect($sql_server, $sql_user, $sql_password);
mysql_select_db($dbname, $dbh) or die("Konnte Datenbank $dbname nicht öffnen: ".mysql_error());
function put_indb( $id_nr, $id_nr, $h_pkt, $g_pkt, $h_sp, $g_sp, $h_sae, $g_sae)
{
for ($i = 0; $i < 3; $i++){
$anfrage = mysql_db_query("usr_web817_1","UPDATE a1_spiele SET h_pkt=$h_pkt[$i],
g_pkt=$g_pkt[$i],
h_sp=$h_sp[$i],
g_sp=$g_sp[$i],
h_sae=$h_sae[$i],
g_sae=$g_sae[$i] WHERE id_nr=$id_nr[$i]");
}
}
// sofort den 1. Spieltag ausgeben
if ($SPIELTAG == "") {
$SPIELTAG = 1;
}
// wird nur ausgegeben, wenn nach SPIELTAG abgefragt wird
if ($SPIELTAG != "" && $SPIELTAG > 0 && $SPIELTAG < 11) {
include("/home/www/web817/files/include.inc.php");
$db = mysql_connect($sql_server, $sql_user, $sql_password);
$sqlab1 = "select tname from a1_teams inner join a1_spiele on a1_teams.id_a1nr=a1_spiele.heim
where a1_spiele.spieltag=$SPIELTAG order by id_nr";
$sqlab2 = "select tname from a1_teams inner join a1_spiele on a1_teams.id_a1nr=a1_spiele.gast
where a1_spiele.spieltag=$SPIELTAG order by id_nr";
$sqlab3 = "select id_nr from a1_spiele";
$result1 = mysql_db_query("usr_web817_1", $sqlab1);
$result2 = mysql_db_query("usr_web817_1", $sqlab2);
$result3 = mysql_db_query("usr_web817_1", $sqlab3);
$num1 = mysql_num_rows($result1);
$num2 = mysql_num_rows($result2);
$num3 = mysql_num_rows($result3);
//Anfang der Tabellle für die Darstellung der Begegnungen
echo "<h2>$SPIELTAG . Spieltag</h2>";
echo "<br>";
echo "<table cellspacing=0 cellpadding=0 border=0>";
echo "<tr><td></td><td></td><td></td><td> </td><td><center>Punkte</center></td><td> </td><td><center>Spiele</center></td><td> </td><td><center>Sätze</center></td></tr>";
if ($eintragen)
call_user_func("put_indb", $id_nr, $h_pkt, $g_pkt, $h_sp, $g_sp, $h_sae, $g_sae);
//Schleifenanfang für die Darstellung der Begegnungen
for ($ii = 0; $ii < $num1; $ii++) {
$heim=mysql_result($result1, $ii, "tname");
$gast=mysql_result($result2, $ii, "tname");
$spiel[$ii]=mysql_result($result3, $ii, "id_nr");
// Formular mit Aktion in_db aufrufen
echo "<form action="$PHP_SELF?action=put_indb" method="POST">";
echo '<input type="hidden" name="id_nr['.$ii.']" value="'.$spiel[$ii].'">';
echo "<tr><td>$heim </td><td>:</td><td> $gast</td>
<td> </td>
<td><input type=text name=h_pkt['.$ii.'] size=2> : <input type=text name=g_pkt['.$ii.'] size=2></td>
<td> </td>
<td><input type=text name=h_sp['.$ii.'] size=2> : <input type=text name=g_sp['.$ii.'] size=2></td>
<td> </td>
<td><input type=text name=h_sae['.$ii.'] size=2> : <input type=text name=g_sae['.$ii.'] size=2></td>
</tr>";
}
mysql_close($db);
}
echo "</table>";
echo "<br><br>";
echo " <input type=submit value=Senden name=eintragen></p></form>";
// ---------------------------------------------------------------------------- //
echo "<br><br>";
// Links mit Spieltagen erstellen, 1 bis 10
for ($ST = 1; $ST < 11; $ST++) {
echo "<a href='?PHP_SELF&SPIELTAG=$ST'> $ST </a>|";
}
echo "<br><br>";
?>
|
02.12.2004, 10:07:51
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Der Fehler ist nicht bei der Deklaration der Funktion, sondern beim Aufruf selbiger. Sieh Dich da mal um, wirst den kleinen Fehler sicher schnell finden...
|
02.12.2004, 10:14:46
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
Hallo C4,
welchen kleinen Fehler? Beim Aufruf der Funktion brauche ich doch die Arrays nciht mitübergeben sondern nur die Variablen, oder übersehe ich was total anderes?`
Th.
|
02.12.2004, 10:16:33
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Zwei Stichworte: Fehlermeldung und Zählen!
|
02.12.2004, 10:22:42
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
Oh Danke,
hab ja 2 mal id_nr drinnen stehen.
Aber leider updatet er mir die Daten immernoch nicht in der DB.
Was kann da noch schief gehen?
Habe ja in der Schleife nur erstmal i<3 gemacht damit ich die ersten 3 Datensätze des 1. Spieltages nur updaten kann..
Th.
|
02.12.2004, 10:26:59
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Bist Du sicher, dass die Abfragen korrekt sind?
Ändere das mal ab:
PHP-Code:
// aus sowas
mysql_db_query("usr_web817_1", $sqlab1);
// machst Du sowas
mysql_db_query("usr_web817_1", $sqlab1) or die(mysql_error());
Sollte eine Fehlermeldung kommen, dann wird sie Dir sicher helfen.
|
02.12.2004, 10:35:58
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
Tja, es kommt kein Fehler...
|
02.12.2004, 10:48:00
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Dann kommt der lustige Teil: Prüfen, ob alle Variablen den gewünschten Wert haben. Nach dem Abschicken des Formulares und vor der Nutzung mit MySQL z.B.
Sieh Dir auch mal das Formular im Browser an. Also den Quelltext. Ich glaube, dass das nicht so ganz das Wahre ist.
|
02.12.2004, 15:21:57
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
habe es lösen können..
danke
|
02.12.2004, 18:28:07
|
Anfänger
|
|
Registriert seit: Oct 2004
Beiträge: 79
|
|
Hallo nochmal,
habe aberjetzt das nächste Problem.
Komme etwas durcheinander wie ich jetzt meine for Schleife so gestalten muss, dass dei Funtkion mir auch beim 2., 3. ... usw. usw. Speiltag auch die Begegnungen an die richtige Stelle einträgt. Bisher trägt er alles nur zu den ersten 3 Spielbegegnungen ein.
Der jetzige Quellcode:
PHP-Code:
<?php
//Datenbankconnect
$dbname="usr_web817_1";
include("/home/www/web817/files/include.inc.php");
$dbh = mysql_connect($sql_server, $sql_user, $sql_password);
mysql_select_db($dbname, $dbh) or die("Konnte Datenbank $dbname nicht öffnen: ".mysql_error());
// Funktion für Update der Werte aus dem Forumlar
// Variable i zwischen 0 und ??? da 30 Spiele ingesamt sind
function put_indb( $id_nr, $h_pkt, $g_pkt, $h_sp, $g_sp, $h_sae, $g_sae)
{
for ($i = 0; $i < 3; $i++){
$sql="UPDATE a1_spiele SET h_pkt='".$h_pkt[$i]."',
g_pkt='".$g_pkt[$i]."',
h_sp='".$h_sp[$i]."',
g_sp='".$g_sp[$i]."',
h_sae='".$h_sae[$i]."',
g_sae='".$g_sae[$i]."' WHERE id_nr='".$id_nr[$i]."'";
print("UPDATE a1_spiele SET h_pkt=$h_pkt[$i]g_pkt=$g_pkt[$i], h_sp=$h_sp[$i], g_sp=$g_sp[$i], h_sae=$h_sae[$i], g_sae=$g_sae[$i] WHERE id_nr=$id_nr[$i]");
$anfrage = mysql_db_query("usr_web817_1",$sql) or die("update fehler: ". mysql_error());
}
}
// sofort den 1. Spieltag ausgeben
if ($SPIELTAG == "") {
$SPIELTAG = 1;
}
// wird nur ausgegeben, wenn nach SPIELTAG abgefragt wird
if ($SPIELTAG != "" && $SPIELTAG > 0 && $SPIELTAG < 11) {
include("/home/www/web817/files/include.inc.php");
$db = mysql_connect($sql_server, $sql_user, $sql_password);
$sqlab1 = "select tname from a1_teams inner join a1_spiele on a1_teams.id_a1nr=a1_spiele.heim
where a1_spiele.spieltag=$SPIELTAG order by id_nr";
$sqlab2 = "select tname from a1_teams inner join a1_spiele on a1_teams.id_a1nr=a1_spiele.gast
where a1_spiele.spieltag=$SPIELTAG order by id_nr";
$sqlab3 = "select id_nr from a1_spiele";
$result1 = mysql_db_query("usr_web817_1", $sqlab1) or die("sqlab1 fehler: ".mysql_error());
$result2 = mysql_db_query("usr_web817_1", $sqlab2) or die("sqlab2 fehler: ".mysql_error());
$result3 = mysql_db_query("usr_web817_1", $sqlab3) or die("sqlab3 fehler: ".mysql_error());
$num1 = mysql_num_rows($result1);
$num2 = mysql_num_rows($result2);
$num3 = mysql_num_rows($result3);
if ($eintragen)
call_user_func("put_indb", $id_nr, $h_pkt, $g_pkt, $h_sp, $g_sp, $h_sae, $g_sae);
//Anfang der Tabellle für die Darstellung der Begegnungen
echo "<h2>$SPIELTAG . Spieltag</h2>";
echo "<br>";
echo "<table cellspacing=0 cellpadding=0 border=0>";
echo "<tr><td></td><td></td><td></td><td> </td><td><center>Punkte</center></td><td> </td><td><center>Spiele</center></td><td> </td><td><center>Sätze</center></td></tr>";
//Schleifenanfang für die Darstellung der Begegnungen
for ($ii = 0; $ii < $num1; $ii++) {
$heim=mysql_result($result1, $ii, "tname");
$gast=mysql_result($result2, $ii, "tname");
$spiel[$ii]=mysql_result($result3, $ii, "id_nr");
// Formular mit Aktion in_db aufrufen
echo "<form action="$PHP_SELF?action=put_indb" method="POST">";
echo '<input type="hidden" name="id_nr['.$ii.']" value="'.$spiel[$ii].'">';
echo "<tr><td>$heim </td><td>:</td><td> $gast</td>";
echo '<td> </td>';
echo '<td><input type=text name="h_pkt['.$ii.']" size=2> : <input type=text name="g_pkt['.$ii.']" size=2></td>';
echo '<td> </td>';
echo '<td><input type=text name="h_sp['.$ii.']" size=2> : <input type=text name="g_sp['.$ii.']" size=2></td>';
echo '<td> </td>';
echo '<td><input type=text name="h_sae['.$ii.']" size=2> : <input type=text name="g_sae['.$ii.']" size=2></td>';
echo '</tr>';
}
mysql_close($db);
}
echo "</table>";
echo "<br><br>";
echo " <input type=submit value=Senden name=eintragen></p></form>";
// ---------------------------------------------------------------------------- //
echo "<br><br>";
// Links mit Spieltagen erstellen, 1 bis 10
for ($ST = 1; $ST < 11; $ST++) {
echo "<a href='?PHP_SELF&SPIELTAG=$ST'> $ST </a>|";
}
echo "<br><br>";
?>
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:41:10 Uhr.
|