keyboard 4x4 to i2c eeprom

Hello
Im new to eeproms
so im trying to add when you press 1 on keyboard to write 1 on eeprom memory with timestamp wich is millis
The problem that i have is i can read the eeprom but i cannot write it from my program
Where is my error ??

So this is my code

#include <Keypad.h>
#include <Wire.h>

int data=0;
byte high = 0x00, low = 0x00;
const byte ROWS = 4; //four rows
const byte COLS = 4; //three columns
char keys[ROWS][COLS] = {

{‘1’, ‘2’, ‘3’, ‘A’},
{‘4’, ‘5’, ‘6’, ‘B’},
{‘7’, ‘8’, ‘9’, ‘C’},
{’*’, ‘0’, ‘#’, ‘D’}
};
byte rowPins[ROWS] = {9,8,7,6}; //connect to the row pinouts of the kpd
byte colPins[COLS] = {5,4,3,2}; //connect to the column pinouts of the kpd

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

unsigned long loopCount;
unsigned long startTime;
String msg;

void setup() {
Serial.begin(9600);
Wire.begin();
kpd.setDebounceTime(1); // Set debounce to minimum. Should improve key response.
loopCount = 0;
startTime = millis() / 1000;
msg = “”;
}

void loop() {
char inChar = (char)Serial.read();
Wire.beginTransmission(0x50);
Wire.write(high); // Address High Byte
Wire.write(low); // Address Low Byte
Wire.write(byte(inChar));
Wire.endTransmission();
loopCount++;
if ( (millis()-startTime)>1 ) {
startTime = millis() / 1000;
loopCount = 0;
}

int Out1=3;
int Out2=4;
int Out3=5;
int Out4=6;
int Out6=7;
int Out7=8;
int Out8=9;

if (kpd.getKeys())
{
int keyPosition1 = kpd.findInList(‘1’);
switch (kpd.key[keyPosition1].kstate) {
case PRESSED:
Serial.print(“1”);
Wire.beginTransmission(0x50);
Wire.write(high); // Address High Byte
Wire.write(low); // Address Low Byte
Wire.write(byte(1));
Wire.endTransmission();
digitalWrite(Out4, LOW);
digitalWrite(Out6, LOW);
break;
case RELEASED:

digitalWrite(Out4, HIGH);
digitalWrite(Out6, HIGH);
break;
}
}

You check millis() with millis()/1000. That is not possible. The function millis() returns the number of milliseconds, therefor also 'startTime' should be in milliseconds.

Are you sure that code is okay to write data to an external EEPROM. Why don't use the internal EEPROM ? Is that too small ?

Why is millis() used in the sketch ? It doesn't seem to do anything.

The loop() function writes EEPROM at an extremely high data rate. That is not okay. Even if that is only for a test, you could at a delay(1000) to slow it down.